./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/array-memsafety/openbsd_cstrcpy-alloca-2.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_cstrcpy-alloca-2.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 4b6873ae1a0d665798beb3dd9c0c48e89806da7dd46f1d2066800a52e0a2aa51 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:40:52,222 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:40:52,224 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:40:52,263 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:40:52,263 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:40:52,266 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:40:52,267 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:40:52,269 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:40:52,271 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:40:52,274 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:40:52,275 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:40:52,276 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:40:52,276 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:40:52,278 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:40:52,279 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:40:52,282 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:40:52,282 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:40:52,283 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:40:52,285 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:40:52,289 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:40:52,290 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:40:52,291 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:40:52,292 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:40:52,292 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:40:52,297 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:40:52,297 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:40:52,297 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:40:52,298 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:40:52,299 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:40:52,299 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:40:52,300 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:40:52,300 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:40:52,301 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:40:52,302 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:40:52,303 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:40:52,303 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:40:52,303 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:40:52,304 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:40:52,304 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:40:52,304 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:40:52,305 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:40:52,306 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:40:52,332 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:40:52,332 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:40:52,332 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:40:52,333 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:40:52,333 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:40:52,333 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:40:52,334 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:40:52,334 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:40:52,334 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:40:52,334 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:40:52,335 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:40:52,335 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:40:52,335 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:40:52,335 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:40:52,336 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:40:52,336 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:40:52,336 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:40:52,336 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:40:52,336 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:40:52,336 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:40:52,336 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:40:52,337 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:40:52,337 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:40:52,337 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:40:52,337 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:40:52,337 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:40:52,337 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:40:52,337 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:40:52,338 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:40:52,338 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:40:52,338 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 -> 4b6873ae1a0d665798beb3dd9c0c48e89806da7dd46f1d2066800a52e0a2aa51 [2022-02-20 23:40:52,535 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:40:52,555 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:40:52,557 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:40:52,558 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:40:52,558 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:40:52,559 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-memsafety/openbsd_cstrcpy-alloca-2.i [2022-02-20 23:40:52,605 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d73de0e9a/2f4a8c52209c4c46b086bee99d5ac8e6/FLAG0f30a2499 [2022-02-20 23:40:53,064 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:40:53,064 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-memsafety/openbsd_cstrcpy-alloca-2.i [2022-02-20 23:40:53,079 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d73de0e9a/2f4a8c52209c4c46b086bee99d5ac8e6/FLAG0f30a2499 [2022-02-20 23:40:53,090 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d73de0e9a/2f4a8c52209c4c46b086bee99d5ac8e6 [2022-02-20 23:40:53,092 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:40:53,094 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:40:53,096 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:40:53,096 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:40:53,099 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:40:53,100 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,101 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@23205824 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53, skipping insertion in model container [2022-02-20 23:40:53,101 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,107 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:40:53,142 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:40:53,412 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:40:53,421 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:40:53,462 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:40:53,479 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:40:53,479 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53 WrapperNode [2022-02-20 23:40:53,480 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:40:53,480 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:40:53,481 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:40:53,481 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:40:53,485 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:40:53" (1/1) ... [2022-02-20 23:40:53,497 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:40:53" (1/1) ... [2022-02-20 23:40:53,513 INFO L137 Inliner]: procedures = 117, calls = 13, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 65 [2022-02-20 23:40:53,513 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:40:53,513 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:40:53,514 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:40:53,514 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:40:53,518 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,518 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,520 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,522 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,526 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,532 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,536 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,537 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:40:53,538 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:40:53,538 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:40:53,538 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:40:53,539 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (1/1) ... [2022-02-20 23:40:53,549 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:40:53,556 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:53,564 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:40:53,567 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:40:53,595 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:40:53,595 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:40:53,596 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:40:53,597 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:40:53,597 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:40:53,598 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:40:53,680 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:40:53,682 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:40:53,921 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:40:53,925 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:40:53,926 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-02-20 23:40:53,927 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:40:53 BoogieIcfgContainer [2022-02-20 23:40:53,927 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:40:53,928 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:40:53,928 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:40:53,931 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:40:53,931 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:40:53" (1/3) ... [2022-02-20 23:40:53,931 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5697ec7d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:40:53, skipping insertion in model container [2022-02-20 23:40:53,932 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:40:53" (2/3) ... [2022-02-20 23:40:53,932 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5697ec7d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:40:53, skipping insertion in model container [2022-02-20 23:40:53,932 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:40:53" (3/3) ... [2022-02-20 23:40:53,935 INFO L111 eAbstractionObserver]: Analyzing ICFG openbsd_cstrcpy-alloca-2.i [2022-02-20 23:40:53,939 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:40:53,939 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 9 error locations. [2022-02-20 23:40:53,981 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:40:53,987 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:40:53,988 INFO L340 AbstractCegarLoop]: Starting to check reachability of 9 error locations. [2022-02-20 23:40:54,001 INFO L276 IsEmpty]: Start isEmpty. Operand has 29 states, 19 states have (on average 1.8421052631578947) internal successors, (35), 28 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,007 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:40:54,007 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:54,008 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:40:54,008 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr8ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:54,013 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:54,013 INFO L85 PathProgramCache]: Analyzing trace with hash 889510840, now seen corresponding path program 1 times [2022-02-20 23:40:54,022 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:54,023 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2088902962] [2022-02-20 23:40:54,023 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:54,024 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:54,120 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:54,206 INFO L290 TraceCheckUtils]: 0: Hoare triple {32#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {32#true} is VALID [2022-02-20 23:40:54,207 INFO L290 TraceCheckUtils]: 1: Hoare triple {32#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {32#true} is VALID [2022-02-20 23:40:54,208 INFO L290 TraceCheckUtils]: 2: Hoare triple {32#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {34#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:54,209 INFO L290 TraceCheckUtils]: 3: Hoare triple {34#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {35#(<= |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:54,210 INFO L290 TraceCheckUtils]: 4: Hoare triple {35#(<= |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~length1~0#1|)} assume main_~length1~0#1 < main_~length2~0#1;main_#res#1 := 0; {33#false} is VALID [2022-02-20 23:40:54,210 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#false} assume !(#valid == main_old_#valid#1); {33#false} is VALID [2022-02-20 23:40:54,211 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:40:54,211 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:54,212 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2088902962] [2022-02-20 23:40:54,213 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2088902962] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:54,213 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:54,213 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:40:54,214 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1355925189] [2022-02-20 23:40:54,215 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:54,218 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:40:54,219 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:54,221 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:40:54,233 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:40:54,234 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:54,235 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:54,254 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:54,255 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:54,257 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.8421052631578947) internal successors, (35), 28 states have internal predecessors, (35), 0 states have call successors, (0), 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:40:54,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,371 INFO L93 Difference]: Finished difference Result 34 states and 37 transitions. [2022-02-20 23:40:54,371 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:54,372 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:40:54,372 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:54,373 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:40:54,380 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 40 transitions. [2022-02-20 23:40:54,381 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:40:54,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 40 transitions. [2022-02-20 23:40:54,383 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 40 transitions. [2022-02-20 23:40:54,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:54,441 INFO L225 Difference]: With dead ends: 34 [2022-02-20 23:40:54,441 INFO L226 Difference]: Without dead ends: 30 [2022-02-20 23:40:54,443 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:40:54,446 INFO L933 BasicCegarLoop]: 30 mSDtfsCounter, 56 mSDsluCounter, 5 mSDsCounter, 0 mSdLazyCounter, 12 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 35 SdHoareTripleChecker+Invalid, 14 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 12 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:54,447 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [56 Valid, 35 Invalid, 14 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 12 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:54,458 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-02-20 23:40:54,466 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 28. [2022-02-20 23:40:54,466 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:54,468 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand has 28 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 27 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:40:54,468 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand has 28 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 27 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:40:54,469 INFO L87 Difference]: Start difference. First operand 30 states. Second operand has 28 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 27 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:40:54,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,475 INFO L93 Difference]: Finished difference Result 30 states and 33 transitions. [2022-02-20 23:40:54,476 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 33 transitions. [2022-02-20 23:40:54,476 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:54,476 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:54,476 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 27 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) Second operand 30 states. [2022-02-20 23:40:54,477 INFO L87 Difference]: Start difference. First operand has 28 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 27 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) Second operand 30 states. [2022-02-20 23:40:54,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,479 INFO L93 Difference]: Finished difference Result 30 states and 33 transitions. [2022-02-20 23:40:54,479 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 33 transitions. [2022-02-20 23:40:54,480 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:54,480 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:54,480 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:54,480 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:54,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 19 states have (on average 1.6842105263157894) internal successors, (32), 27 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:40:54,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 32 transitions. [2022-02-20 23:40:54,482 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 32 transitions. Word has length 6 [2022-02-20 23:40:54,483 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:54,483 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 32 transitions. [2022-02-20 23:40:54,483 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:40:54,483 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 32 transitions. [2022-02-20 23:40:54,483 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 7 [2022-02-20 23:40:54,483 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:54,484 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1] [2022-02-20 23:40:54,485 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:40:54,485 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr8ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:54,486 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:54,486 INFO L85 PathProgramCache]: Analyzing trace with hash 889512762, now seen corresponding path program 1 times [2022-02-20 23:40:54,487 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:54,487 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [3008134] [2022-02-20 23:40:54,487 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:54,487 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:54,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:54,529 INFO L290 TraceCheckUtils]: 0: Hoare triple {162#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {162#true} is VALID [2022-02-20 23:40:54,530 INFO L290 TraceCheckUtils]: 1: Hoare triple {162#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {164#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:40:54,530 INFO L290 TraceCheckUtils]: 2: Hoare triple {164#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {164#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:40:54,531 INFO L290 TraceCheckUtils]: 3: Hoare triple {164#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(main_~length2~0#1 < 1); {164#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:40:54,532 INFO L290 TraceCheckUtils]: 4: Hoare triple {164#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length1~0#1 < main_~length2~0#1;main_#res#1 := 0; {164#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:40:54,534 INFO L290 TraceCheckUtils]: 5: Hoare triple {164#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {163#false} is VALID [2022-02-20 23:40:54,534 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:40:54,535 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:54,535 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [3008134] [2022-02-20 23:40:54,535 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [3008134] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:54,536 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:54,536 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:40:54,536 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2018131976] [2022-02-20 23:40:54,537 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:54,540 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:40:54,541 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:54,541 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:40:54,546 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:40:54,546 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:40:54,546 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:54,547 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:40:54,547 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:40:54,547 INFO L87 Difference]: Start difference. First operand 28 states and 32 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:40:54,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,590 INFO L93 Difference]: Finished difference Result 29 states and 32 transitions. [2022-02-20 23:40:54,590 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:40:54,591 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:40:54,591 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:54,592 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:40:54,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 32 transitions. [2022-02-20 23:40:54,594 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:40:54,595 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 32 transitions. [2022-02-20 23:40:54,595 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 32 transitions. [2022-02-20 23:40:54,624 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:40:54,626 INFO L225 Difference]: With dead ends: 29 [2022-02-20 23:40:54,627 INFO L226 Difference]: Without dead ends: 28 [2022-02-20 23:40:54,627 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:40:54,631 INFO L933 BasicCegarLoop]: 30 mSDtfsCounter, 2 mSDsluCounter, 13 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 2 SdHoareTripleChecker+Valid, 43 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:40:54,632 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [2 Valid, 43 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:54,634 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-02-20 23:40:54,636 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-02-20 23:40:54,636 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:54,637 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 27 states, 18 states have (on average 1.6666666666666667) internal successors, (30), 26 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,637 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 27 states, 18 states have (on average 1.6666666666666667) internal successors, (30), 26 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,638 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 27 states, 18 states have (on average 1.6666666666666667) internal successors, (30), 26 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,639 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,639 INFO L93 Difference]: Finished difference Result 28 states and 31 transitions. [2022-02-20 23:40:54,640 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-02-20 23:40:54,640 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:54,640 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:54,641 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 18 states have (on average 1.6666666666666667) internal successors, (30), 26 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 28 states. [2022-02-20 23:40:54,642 INFO L87 Difference]: Start difference. First operand has 27 states, 18 states have (on average 1.6666666666666667) internal successors, (30), 26 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 28 states. [2022-02-20 23:40:54,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,644 INFO L93 Difference]: Finished difference Result 28 states and 31 transitions. [2022-02-20 23:40:54,644 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-02-20 23:40:54,645 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:54,645 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:54,645 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:54,645 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:54,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 18 states have (on average 1.6666666666666667) internal successors, (30), 26 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 30 transitions. [2022-02-20 23:40:54,647 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 30 transitions. Word has length 6 [2022-02-20 23:40:54,647 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:54,647 INFO L470 AbstractCegarLoop]: Abstraction has 27 states and 30 transitions. [2022-02-20 23:40:54,647 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:40:54,648 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 30 transitions. [2022-02-20 23:40:54,648 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:40:54,648 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:54,648 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:54,648 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:40:54,649 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:54,649 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:54,649 INFO L85 PathProgramCache]: Analyzing trace with hash 1805033015, now seen corresponding path program 1 times [2022-02-20 23:40:54,650 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:54,650 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [416572543] [2022-02-20 23:40:54,650 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:54,651 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:54,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:54,703 INFO L290 TraceCheckUtils]: 0: Hoare triple {279#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {279#true} is VALID [2022-02-20 23:40:54,704 INFO L290 TraceCheckUtils]: 1: Hoare triple {279#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {279#true} is VALID [2022-02-20 23:40:54,704 INFO L290 TraceCheckUtils]: 2: Hoare triple {279#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {279#true} is VALID [2022-02-20 23:40:54,704 INFO L290 TraceCheckUtils]: 3: Hoare triple {279#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {279#true} is VALID [2022-02-20 23:40:54,705 INFO L290 TraceCheckUtils]: 4: Hoare triple {279#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {281#(= (select |#valid| |ULTIMATE.start_main_~nondetString~0#1.base|) 1)} is VALID [2022-02-20 23:40:54,706 INFO L290 TraceCheckUtils]: 5: Hoare triple {281#(= (select |#valid| |ULTIMATE.start_main_~nondetString~0#1.base|) 1)} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {281#(= (select |#valid| |ULTIMATE.start_main_~nondetString~0#1.base|) 1)} is VALID [2022-02-20 23:40:54,706 INFO L290 TraceCheckUtils]: 6: Hoare triple {281#(= (select |#valid| |ULTIMATE.start_main_~nondetString~0#1.base|) 1)} assume !(1 == #valid[main_~nondetString~0#1.base]); {280#false} is VALID [2022-02-20 23:40:54,706 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:40:54,707 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:54,707 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [416572543] [2022-02-20 23:40:54,707 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [416572543] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:54,707 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:54,707 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:40:54,707 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [420929789] [2022-02-20 23:40:54,707 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:54,708 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:40:54,708 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:54,708 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,714 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:54,714 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:40:54,714 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:54,715 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:40:54,715 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:40:54,715 INFO L87 Difference]: Start difference. First operand 27 states and 30 transitions. Second operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,757 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-02-20 23:40:54,757 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:40:54,758 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:40:54,758 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:54,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 30 transitions. [2022-02-20 23:40:54,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 30 transitions. [2022-02-20 23:40:54,760 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 30 transitions. [2022-02-20 23:40:54,785 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:40:54,787 INFO L225 Difference]: With dead ends: 25 [2022-02-20 23:40:54,787 INFO L226 Difference]: Without dead ends: 25 [2022-02-20 23:40:54,787 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:40:54,793 INFO L933 BasicCegarLoop]: 18 mSDtfsCounter, 18 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 22 SdHoareTripleChecker+Invalid, 15 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:54,794 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 22 Invalid, 15 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:54,795 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-02-20 23:40:54,797 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-02-20 23:40:54,797 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:54,797 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 25 states, 18 states have (on average 1.5555555555555556) internal successors, (28), 24 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,798 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 25 states, 18 states have (on average 1.5555555555555556) internal successors, (28), 24 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,798 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 25 states, 18 states have (on average 1.5555555555555556) internal successors, (28), 24 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,802 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-02-20 23:40:54,802 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-02-20 23:40:54,803 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:54,803 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:54,803 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 18 states have (on average 1.5555555555555556) internal successors, (28), 24 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 25 states. [2022-02-20 23:40:54,804 INFO L87 Difference]: Start difference. First operand has 25 states, 18 states have (on average 1.5555555555555556) internal successors, (28), 24 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 25 states. [2022-02-20 23:40:54,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,807 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-02-20 23:40:54,808 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-02-20 23:40:54,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:54,808 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:54,808 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:54,808 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:54,809 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 18 states have (on average 1.5555555555555556) internal successors, (28), 24 states have internal predecessors, (28), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,809 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-02-20 23:40:54,809 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 7 [2022-02-20 23:40:54,810 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:54,811 INFO L470 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-02-20 23:40:54,811 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,812 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-02-20 23:40:54,812 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:40:54,812 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:54,812 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:54,813 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:40:54,813 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:54,813 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:54,813 INFO L85 PathProgramCache]: Analyzing trace with hash 1805033016, now seen corresponding path program 1 times [2022-02-20 23:40:54,813 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:54,813 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2094820079] [2022-02-20 23:40:54,814 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:54,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:54,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:54,916 INFO L290 TraceCheckUtils]: 0: Hoare triple {384#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {384#true} is VALID [2022-02-20 23:40:54,917 INFO L290 TraceCheckUtils]: 1: Hoare triple {384#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {384#true} is VALID [2022-02-20 23:40:54,917 INFO L290 TraceCheckUtils]: 2: Hoare triple {384#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {384#true} is VALID [2022-02-20 23:40:54,918 INFO L290 TraceCheckUtils]: 3: Hoare triple {384#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {386#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:54,919 INFO L290 TraceCheckUtils]: 4: Hoare triple {386#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {387#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:54,920 INFO L290 TraceCheckUtils]: 5: Hoare triple {387#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {387#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:54,921 INFO L290 TraceCheckUtils]: 6: Hoare triple {387#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(1 + (main_~nondetString~0#1.offset + (main_~length2~0#1 - 1)) <= #length[main_~nondetString~0#1.base] && 0 <= main_~nondetString~0#1.offset + (main_~length2~0#1 - 1)); {385#false} is VALID [2022-02-20 23:40:54,921 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:40:54,921 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:54,921 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2094820079] [2022-02-20 23:40:54,922 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2094820079] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:54,922 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:54,922 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:40:54,922 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1992230817] [2022-02-20 23:40:54,922 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:54,923 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:40:54,923 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:54,923 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,929 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:54,930 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:54,930 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:54,931 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:54,931 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:54,932 INFO L87 Difference]: Start difference. First operand 25 states and 28 transitions. Second operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:54,984 INFO L93 Difference]: Finished difference Result 24 states and 27 transitions. [2022-02-20 23:40:54,984 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:54,984 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:40:54,984 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:54,984 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 28 transitions. [2022-02-20 23:40:54,986 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:54,986 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 28 transitions. [2022-02-20 23:40:54,987 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 28 transitions. [2022-02-20 23:40:55,013 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,013 INFO L225 Difference]: With dead ends: 24 [2022-02-20 23:40:55,014 INFO L226 Difference]: Without dead ends: 24 [2022-02-20 23:40:55,014 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:40:55,014 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 21 mSDsluCounter, 6 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 22 SdHoareTripleChecker+Invalid, 16 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:55,015 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 22 Invalid, 16 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:55,015 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states. [2022-02-20 23:40:55,016 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 24. [2022-02-20 23:40:55,016 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:55,017 INFO L82 GeneralOperation]: Start isEquivalent. First operand 24 states. Second operand has 24 states, 18 states have (on average 1.5) 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:40:55,017 INFO L74 IsIncluded]: Start isIncluded. First operand 24 states. Second operand has 24 states, 18 states have (on average 1.5) 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:40:55,017 INFO L87 Difference]: Start difference. First operand 24 states. Second operand has 24 states, 18 states have (on average 1.5) 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:40:55,018 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,018 INFO L93 Difference]: Finished difference Result 24 states and 27 transitions. [2022-02-20 23:40:55,018 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 27 transitions. [2022-02-20 23:40:55,018 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,018 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,018 INFO L74 IsIncluded]: Start isIncluded. First operand has 24 states, 18 states have (on average 1.5) 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 24 states. [2022-02-20 23:40:55,019 INFO L87 Difference]: Start difference. First operand has 24 states, 18 states have (on average 1.5) 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 24 states. [2022-02-20 23:40:55,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,026 INFO L93 Difference]: Finished difference Result 24 states and 27 transitions. [2022-02-20 23:40:55,026 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 27 transitions. [2022-02-20 23:40:55,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,027 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:55,027 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:55,027 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 18 states have (on average 1.5) 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:40:55,028 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 27 transitions. [2022-02-20 23:40:55,028 INFO L78 Accepts]: Start accepts. Automaton has 24 states and 27 transitions. Word has length 7 [2022-02-20 23:40:55,028 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:55,028 INFO L470 AbstractCegarLoop]: Abstraction has 24 states and 27 transitions. [2022-02-20 23:40:55,028 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,029 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 27 transitions. [2022-02-20 23:40:55,029 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:40:55,029 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:55,029 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:55,029 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:40:55,029 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:55,030 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:55,030 INFO L85 PathProgramCache]: Analyzing trace with hash 1805033069, now seen corresponding path program 1 times [2022-02-20 23:40:55,030 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:55,030 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1726453294] [2022-02-20 23:40:55,030 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:55,030 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:55,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:55,071 INFO L290 TraceCheckUtils]: 0: Hoare triple {486#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {486#true} is VALID [2022-02-20 23:40:55,072 INFO L290 TraceCheckUtils]: 1: Hoare triple {486#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {486#true} is VALID [2022-02-20 23:40:55,072 INFO L290 TraceCheckUtils]: 2: Hoare triple {486#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {486#true} is VALID [2022-02-20 23:40:55,073 INFO L290 TraceCheckUtils]: 3: Hoare triple {486#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {488#(<= |ULTIMATE.start_main_~length2~0#1| 1)} is VALID [2022-02-20 23:40:55,073 INFO L290 TraceCheckUtils]: 4: Hoare triple {488#(<= |ULTIMATE.start_main_~length2~0#1| 1)} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1))} is VALID [2022-02-20 23:40:55,074 INFO L290 TraceCheckUtils]: 5: Hoare triple {489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {487#false} is VALID [2022-02-20 23:40:55,074 INFO L290 TraceCheckUtils]: 6: Hoare triple {487#false} assume !(1 + (main_~nondetString~0#1.offset + main_~i~0#1) <= #length[main_~nondetString~0#1.base] && 0 <= main_~nondetString~0#1.offset + main_~i~0#1); {487#false} is VALID [2022-02-20 23:40:55,074 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:40:55,074 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:55,075 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1726453294] [2022-02-20 23:40:55,075 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1726453294] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:55,075 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:55,075 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:40:55,075 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [357618897] [2022-02-20 23:40:55,075 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:55,076 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:40:55,076 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:55,076 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,081 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,081 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:55,081 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:55,082 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:55,082 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:55,082 INFO L87 Difference]: Start difference. First operand 24 states and 27 transitions. Second operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,127 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-02-20 23:40:55,127 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:55,127 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:40:55,128 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:55,128 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,128 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-02-20 23:40:55,129 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,129 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-02-20 23:40:55,129 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-02-20 23:40:55,164 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,165 INFO L225 Difference]: With dead ends: 40 [2022-02-20 23:40:55,165 INFO L226 Difference]: Without dead ends: 40 [2022-02-20 23:40:55,166 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:40:55,166 INFO L933 BasicCegarLoop]: 24 mSDtfsCounter, 31 mSDsluCounter, 20 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 10 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:55,167 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 44 Invalid, 10 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:55,167 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-02-20 23:40:55,168 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 26. [2022-02-20 23:40:55,169 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:55,169 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 26 states, 20 states have (on average 1.45) 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:40:55,169 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 26 states, 20 states have (on average 1.45) 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:40:55,169 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 26 states, 20 states have (on average 1.45) 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:40:55,170 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,170 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-02-20 23:40:55,171 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-02-20 23:40:55,171 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,171 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,171 INFO L74 IsIncluded]: Start isIncluded. First operand has 26 states, 20 states have (on average 1.45) 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 40 states. [2022-02-20 23:40:55,172 INFO L87 Difference]: Start difference. First operand has 26 states, 20 states have (on average 1.45) 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 40 states. [2022-02-20 23:40:55,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,173 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-02-20 23:40:55,173 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-02-20 23:40:55,173 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,173 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,173 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:55,174 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:55,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 20 states have (on average 1.45) 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:40:55,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 29 transitions. [2022-02-20 23:40:55,174 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 29 transitions. Word has length 7 [2022-02-20 23:40:55,175 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:55,175 INFO L470 AbstractCegarLoop]: Abstraction has 26 states and 29 transitions. [2022-02-20 23:40:55,175 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 1.75) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,175 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 29 transitions. [2022-02-20 23:40:55,175 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:40:55,175 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:55,175 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:55,176 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:40:55,176 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:55,176 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:55,176 INFO L85 PathProgramCache]: Analyzing trace with hash 1805092651, now seen corresponding path program 1 times [2022-02-20 23:40:55,176 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:55,176 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1625338966] [2022-02-20 23:40:55,176 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:55,177 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:55,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:55,247 INFO L290 TraceCheckUtils]: 0: Hoare triple {638#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {638#true} is VALID [2022-02-20 23:40:55,247 INFO L290 TraceCheckUtils]: 1: Hoare triple {638#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {638#true} is VALID [2022-02-20 23:40:55,247 INFO L290 TraceCheckUtils]: 2: Hoare triple {638#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {638#true} is VALID [2022-02-20 23:40:55,248 INFO L290 TraceCheckUtils]: 3: Hoare triple {638#true} assume !(main_~length2~0#1 < 1); {640#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:55,248 INFO L290 TraceCheckUtils]: 4: Hoare triple {640#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {641#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:40:55,250 INFO L290 TraceCheckUtils]: 5: Hoare triple {641#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {641#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:40:55,250 INFO L290 TraceCheckUtils]: 6: Hoare triple {641#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !(1 + (main_~nondetString~0#1.offset + main_~i~0#1) <= #length[main_~nondetString~0#1.base] && 0 <= main_~nondetString~0#1.offset + main_~i~0#1); {639#false} is VALID [2022-02-20 23:40:55,250 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:40:55,250 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:55,250 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1625338966] [2022-02-20 23:40:55,251 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1625338966] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:55,251 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:55,251 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:40:55,251 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [972387669] [2022-02-20 23:40:55,251 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:55,251 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:40:55,251 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:55,251 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,256 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 7 edges. 7 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,257 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:55,257 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:55,257 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:55,257 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:55,257 INFO L87 Difference]: Start difference. First operand 26 states and 29 transitions. Second operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,332 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:55,332 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:55,332 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:40:55,333 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:55,333 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 47 transitions. [2022-02-20 23:40:55,333 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 47 transitions. [2022-02-20 23:40:55,335 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 47 transitions. [2022-02-20 23:40:55,390 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:40:55,390 INFO L225 Difference]: With dead ends: 44 [2022-02-20 23:40:55,391 INFO L226 Difference]: Without dead ends: 44 [2022-02-20 23:40:55,391 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:40:55,391 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 56 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 33 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:55,391 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [56 Valid, 33 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:55,392 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-02-20 23:40:55,393 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 28. [2022-02-20 23:40:55,393 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:55,393 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 28 states, 22 states have (on average 1.4545454545454546) internal successors, (32), 27 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:40:55,393 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 28 states, 22 states have (on average 1.4545454545454546) internal successors, (32), 27 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:40:55,393 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 28 states, 22 states have (on average 1.4545454545454546) internal successors, (32), 27 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:40:55,394 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,394 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:55,394 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 48 transitions. [2022-02-20 23:40:55,394 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,394 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,394 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 22 states have (on average 1.4545454545454546) internal successors, (32), 27 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) Second operand 44 states. [2022-02-20 23:40:55,394 INFO L87 Difference]: Start difference. First operand has 28 states, 22 states have (on average 1.4545454545454546) internal successors, (32), 27 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) Second operand 44 states. [2022-02-20 23:40:55,395 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,395 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:55,395 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 48 transitions. [2022-02-20 23:40:55,396 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,396 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,396 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:55,396 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:55,396 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 22 states have (on average 1.4545454545454546) internal successors, (32), 27 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:40:55,396 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 32 transitions. [2022-02-20 23:40:55,396 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 32 transitions. Word has length 7 [2022-02-20 23:40:55,396 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:55,396 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 32 transitions. [2022-02-20 23:40:55,396 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 2.3333333333333335) internal successors, (7), 4 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,397 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 32 transitions. [2022-02-20 23:40:55,397 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:40:55,397 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:55,397 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:55,397 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:40:55,397 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr4REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:55,397 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:55,397 INFO L85 PathProgramCache]: Analyzing trace with hash -530059845, now seen corresponding path program 1 times [2022-02-20 23:40:55,397 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:55,397 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [321404969] [2022-02-20 23:40:55,397 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:55,398 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:55,410 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:55,442 INFO L290 TraceCheckUtils]: 0: Hoare triple {806#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {806#true} is VALID [2022-02-20 23:40:55,442 INFO L290 TraceCheckUtils]: 1: Hoare triple {806#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {806#true} is VALID [2022-02-20 23:40:55,442 INFO L290 TraceCheckUtils]: 2: Hoare triple {806#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {806#true} is VALID [2022-02-20 23:40:55,442 INFO L290 TraceCheckUtils]: 3: Hoare triple {806#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {806#true} is VALID [2022-02-20 23:40:55,442 INFO L290 TraceCheckUtils]: 4: Hoare triple {806#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {806#true} is VALID [2022-02-20 23:40:55,442 INFO L290 TraceCheckUtils]: 5: Hoare triple {806#true} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {806#true} is VALID [2022-02-20 23:40:55,443 INFO L290 TraceCheckUtils]: 6: Hoare triple {806#true} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {808#(= (select |#valid| |ULTIMATE.start_main_~nondetString~0#1.base|) 1)} is VALID [2022-02-20 23:40:55,443 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#(= (select |#valid| |ULTIMATE.start_main_~nondetString~0#1.base|) 1)} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {809#(= (select |#valid| |ULTIMATE.start_cstrcpy_~from#1.base|) 1)} is VALID [2022-02-20 23:40:55,444 INFO L290 TraceCheckUtils]: 8: Hoare triple {809#(= (select |#valid| |ULTIMATE.start_cstrcpy_~from#1.base|) 1)} assume !(1 == #valid[cstrcpy_~from#1.base]); {807#false} is VALID [2022-02-20 23:40:55,444 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:40:55,444 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:55,444 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [321404969] [2022-02-20 23:40:55,444 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [321404969] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:55,444 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:55,444 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:40:55,444 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2007995122] [2022-02-20 23:40:55,444 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:55,445 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:40:55,445 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:55,445 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,450 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,451 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:55,451 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:55,451 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:55,451 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:55,451 INFO L87 Difference]: Start difference. First operand 28 states and 32 transitions. Second operand has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,501 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,501 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-02-20 23:40:55,501 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:55,501 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:40:55,501 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:55,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 27 transitions. [2022-02-20 23:40:55,502 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,503 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 27 transitions. [2022-02-20 23:40:55,503 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 27 transitions. [2022-02-20 23:40:55,524 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,525 INFO L225 Difference]: With dead ends: 27 [2022-02-20 23:40:55,525 INFO L226 Difference]: Without dead ends: 27 [2022-02-20 23:40:55,525 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:40:55,527 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 23 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 28 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:55,528 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 28 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:55,528 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-02-20 23:40:55,530 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-02-20 23:40:55,530 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:55,530 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 26 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:40:55,530 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 26 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:40:55,530 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 26 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:40:55,531 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,531 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-02-20 23:40:55,531 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-02-20 23:40:55,531 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,531 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,531 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 26 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 27 states. [2022-02-20 23:40:55,531 INFO L87 Difference]: Start difference. First operand has 27 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 26 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 27 states. [2022-02-20 23:40:55,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,532 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-02-20 23:40:55,532 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-02-20 23:40:55,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,533 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,533 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:55,533 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:55,533 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 22 states have (on average 1.4090909090909092) internal successors, (31), 26 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:40:55,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-02-20 23:40:55,533 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 9 [2022-02-20 23:40:55,533 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:55,533 INFO L470 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-02-20 23:40:55,533 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 3.0) internal successors, (9), 4 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,534 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-02-20 23:40:55,534 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:40:55,534 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:55,534 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:55,534 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:40:55,535 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:55,535 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:55,535 INFO L85 PathProgramCache]: Analyzing trace with hash -530059844, now seen corresponding path program 1 times [2022-02-20 23:40:55,535 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:55,535 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [180987170] [2022-02-20 23:40:55,535 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:55,535 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:55,560 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:55,612 INFO L290 TraceCheckUtils]: 0: Hoare triple {922#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {922#true} is VALID [2022-02-20 23:40:55,614 INFO L290 TraceCheckUtils]: 1: Hoare triple {922#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {922#true} is VALID [2022-02-20 23:40:55,615 INFO L290 TraceCheckUtils]: 2: Hoare triple {922#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {922#true} is VALID [2022-02-20 23:40:55,615 INFO L290 TraceCheckUtils]: 3: Hoare triple {922#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {924#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:55,616 INFO L290 TraceCheckUtils]: 4: Hoare triple {924#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {925#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:55,617 INFO L290 TraceCheckUtils]: 5: Hoare triple {925#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {925#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:55,618 INFO L290 TraceCheckUtils]: 6: Hoare triple {925#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {926#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:40:55,619 INFO L290 TraceCheckUtils]: 7: Hoare triple {926#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {927#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:40:55,620 INFO L290 TraceCheckUtils]: 8: Hoare triple {927#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {923#false} is VALID [2022-02-20 23:40:55,620 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:40:55,620 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:55,621 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [180987170] [2022-02-20 23:40:55,621 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [180987170] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:55,621 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:55,621 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:40:55,621 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1948739849] [2022-02-20 23:40:55,621 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:55,622 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.8) internal successors, (9), 6 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:40:55,622 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:55,622 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 1.8) internal successors, (9), 6 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 9 edges. 9 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,628 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:40:55,628 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:55,629 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:40:55,629 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:40:55,629 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. Second operand has 6 states, 5 states have (on average 1.8) internal successors, (9), 6 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,733 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-02-20 23:40:55,733 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:40:55,733 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 1.8) internal successors, (9), 6 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:40:55,733 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:55,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.8) internal successors, (9), 6 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 37 transitions. [2022-02-20 23:40:55,734 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 1.8) internal successors, (9), 6 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,734 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 37 transitions. [2022-02-20 23:40:55,734 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 37 transitions. [2022-02-20 23:40:55,764 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,767 INFO L225 Difference]: With dead ends: 37 [2022-02-20 23:40:55,767 INFO L226 Difference]: Without dead ends: 37 [2022-02-20 23:40:55,768 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:40:55,768 INFO L933 BasicCegarLoop]: 14 mSDtfsCounter, 65 mSDsluCounter, 25 mSDsCounter, 0 mSdLazyCounter, 28 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 28 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:55,768 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 39 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 28 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:55,769 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-02-20 23:40:55,774 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 28. [2022-02-20 23:40:55,774 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:55,774 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 28 states, 23 states have (on average 1.391304347826087) internal successors, (32), 27 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:40:55,778 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 28 states, 23 states have (on average 1.391304347826087) internal successors, (32), 27 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:40:55,779 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 28 states, 23 states have (on average 1.391304347826087) internal successors, (32), 27 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:40:55,780 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,781 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-02-20 23:40:55,781 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-02-20 23:40:55,781 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,781 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,781 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 23 states have (on average 1.391304347826087) internal successors, (32), 27 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) Second operand 37 states. [2022-02-20 23:40:55,782 INFO L87 Difference]: Start difference. First operand has 28 states, 23 states have (on average 1.391304347826087) internal successors, (32), 27 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) Second operand 37 states. [2022-02-20 23:40:55,783 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,783 INFO L93 Difference]: Finished difference Result 37 states and 41 transitions. [2022-02-20 23:40:55,783 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 41 transitions. [2022-02-20 23:40:55,783 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,783 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,783 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:55,784 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:55,784 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 23 states have (on average 1.391304347826087) internal successors, (32), 27 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:40:55,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 32 transitions. [2022-02-20 23:40:55,785 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 32 transitions. Word has length 9 [2022-02-20 23:40:55,785 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:55,785 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 32 transitions. [2022-02-20 23:40:55,785 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 1.8) internal successors, (9), 6 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,785 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 32 transitions. [2022-02-20 23:40:55,786 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:40:55,786 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:55,786 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:55,786 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:40:55,786 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr6REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:55,787 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:55,787 INFO L85 PathProgramCache]: Analyzing trace with hash 748014006, now seen corresponding path program 1 times [2022-02-20 23:40:55,787 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:55,787 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2057170663] [2022-02-20 23:40:55,787 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:55,787 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:55,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:55,837 INFO L290 TraceCheckUtils]: 0: Hoare triple {1073#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1073#true} is VALID [2022-02-20 23:40:55,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {1073#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {1073#true} is VALID [2022-02-20 23:40:55,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {1073#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1073#true} is VALID [2022-02-20 23:40:55,837 INFO L290 TraceCheckUtils]: 3: Hoare triple {1073#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {1073#true} is VALID [2022-02-20 23:40:55,838 INFO L290 TraceCheckUtils]: 4: Hoare triple {1073#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {1075#(or (= (select |#valid| |ULTIMATE.start_main_~nondetArea~0#1.base|) 1) (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))} is VALID [2022-02-20 23:40:55,839 INFO L290 TraceCheckUtils]: 5: Hoare triple {1075#(or (= (select |#valid| |ULTIMATE.start_main_~nondetArea~0#1.base|) 1) (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {1075#(or (= (select |#valid| |ULTIMATE.start_main_~nondetArea~0#1.base|) 1) (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))} is VALID [2022-02-20 23:40:55,839 INFO L290 TraceCheckUtils]: 6: Hoare triple {1075#(or (= (select |#valid| |ULTIMATE.start_main_~nondetArea~0#1.base|) 1) (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {1076#(= (select |#valid| |ULTIMATE.start_main_~nondetArea~0#1.base|) 1)} is VALID [2022-02-20 23:40:55,840 INFO L290 TraceCheckUtils]: 7: Hoare triple {1076#(= (select |#valid| |ULTIMATE.start_main_~nondetArea~0#1.base|) 1)} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {1077#(= (select |#valid| |ULTIMATE.start_cstrcpy_~to#1.base|) 1)} is VALID [2022-02-20 23:40:55,840 INFO L290 TraceCheckUtils]: 8: Hoare triple {1077#(= (select |#valid| |ULTIMATE.start_cstrcpy_~to#1.base|) 1)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {1077#(= (select |#valid| |ULTIMATE.start_cstrcpy_~to#1.base|) 1)} is VALID [2022-02-20 23:40:55,840 INFO L290 TraceCheckUtils]: 9: Hoare triple {1077#(= (select |#valid| |ULTIMATE.start_cstrcpy_~to#1.base|) 1)} assume !(1 == #valid[cstrcpy_~to#1.base]); {1074#false} is VALID [2022-02-20 23:40:55,840 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:40:55,841 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:55,841 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2057170663] [2022-02-20 23:40:55,841 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2057170663] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:55,841 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:55,841 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:40:55,841 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1975508873] [2022-02-20 23:40:55,841 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:55,842 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:40:55,842 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:55,842 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,849 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:55,849 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:40:55,849 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:55,849 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:40:55,850 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:40:55,851 INFO L87 Difference]: Start difference. First operand 28 states and 32 transitions. Second operand has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,909 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,909 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-02-20 23:40:55,909 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:55,910 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:40:55,910 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:55,910 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,910 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 26 transitions. [2022-02-20 23:40:55,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,911 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 26 transitions. [2022-02-20 23:40:55,911 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 26 transitions. [2022-02-20 23:40:55,944 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:40:55,945 INFO L225 Difference]: With dead ends: 27 [2022-02-20 23:40:55,945 INFO L226 Difference]: Without dead ends: 27 [2022-02-20 23:40:55,945 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=13, Invalid=17, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:40:55,945 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 34 mSDsluCounter, 13 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 30 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:55,946 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [34 Valid, 30 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:55,946 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-02-20 23:40:55,947 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-02-20 23:40:55,947 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:55,947 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 23 states have (on average 1.3478260869565217) internal successors, (31), 26 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:40:55,947 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 23 states have (on average 1.3478260869565217) internal successors, (31), 26 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:40:55,947 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 23 states have (on average 1.3478260869565217) internal successors, (31), 26 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:40:55,948 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,948 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-02-20 23:40:55,948 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-02-20 23:40:55,948 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,948 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,949 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 23 states have (on average 1.3478260869565217) internal successors, (31), 26 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 27 states. [2022-02-20 23:40:55,949 INFO L87 Difference]: Start difference. First operand has 27 states, 23 states have (on average 1.3478260869565217) internal successors, (31), 26 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 27 states. [2022-02-20 23:40:55,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:55,949 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-02-20 23:40:55,949 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-02-20 23:40:55,950 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:55,950 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:55,950 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:55,950 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:55,950 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 23 states have (on average 1.3478260869565217) internal successors, (31), 26 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:40:55,950 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-02-20 23:40:55,951 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 10 [2022-02-20 23:40:55,951 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:55,951 INFO L470 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-02-20 23:40:55,951 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:55,951 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-02-20 23:40:55,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:40:55,951 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:55,951 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:55,952 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-02-20 23:40:55,952 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:55,952 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:55,952 INFO L85 PathProgramCache]: Analyzing trace with hash 748014007, now seen corresponding path program 1 times [2022-02-20 23:40:55,952 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:55,952 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [471633308] [2022-02-20 23:40:55,953 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:55,953 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:55,967 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:56,003 INFO L290 TraceCheckUtils]: 0: Hoare triple {1190#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1190#true} is VALID [2022-02-20 23:40:56,004 INFO L290 TraceCheckUtils]: 1: Hoare triple {1190#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {1190#true} is VALID [2022-02-20 23:40:56,004 INFO L290 TraceCheckUtils]: 2: Hoare triple {1190#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1192#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:56,004 INFO L290 TraceCheckUtils]: 3: Hoare triple {1192#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {1192#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:56,005 INFO L290 TraceCheckUtils]: 4: Hoare triple {1192#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {1193#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:40:56,006 INFO L290 TraceCheckUtils]: 5: Hoare triple {1193#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {1193#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:40:56,006 INFO L290 TraceCheckUtils]: 6: Hoare triple {1193#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {1193#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:40:56,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {1193#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {1194#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:40:56,007 INFO L290 TraceCheckUtils]: 8: Hoare triple {1194#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {1194#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:40:56,008 INFO L290 TraceCheckUtils]: 9: Hoare triple {1194#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {1191#false} is VALID [2022-02-20 23:40:56,008 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:40:56,008 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:56,008 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [471633308] [2022-02-20 23:40:56,008 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [471633308] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:56,008 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:56,008 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:40:56,009 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1680674374] [2022-02-20 23:40:56,009 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:56,009 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:40:56,009 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:56,009 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,016 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:56,016 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:40:56,016 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:56,017 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:40:56,017 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:40:56,017 INFO L87 Difference]: Start difference. First operand 27 states and 31 transitions. Second operand has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,096 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:56,097 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-02-20 23:40:56,097 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:40:56,097 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 23:40:56,097 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:56,097 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 34 transitions. [2022-02-20 23:40:56,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 34 transitions. [2022-02-20 23:40:56,098 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 34 transitions. [2022-02-20 23:40:56,123 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:56,124 INFO L225 Difference]: With dead ends: 34 [2022-02-20 23:40:56,124 INFO L226 Difference]: Without dead ends: 34 [2022-02-20 23:40:56,124 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=17, Invalid=25, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:40:56,125 INFO L933 BasicCegarLoop]: 15 mSDtfsCounter, 56 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:56,125 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [56 Valid, 36 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:56,125 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-02-20 23:40:56,126 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 28. [2022-02-20 23:40:56,126 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:56,126 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 28 states, 24 states have (on average 1.3333333333333333) internal successors, (32), 27 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:40:56,126 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 28 states, 24 states have (on average 1.3333333333333333) internal successors, (32), 27 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:40:56,127 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 28 states, 24 states have (on average 1.3333333333333333) internal successors, (32), 27 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:40:56,127 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:56,127 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-02-20 23:40:56,128 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-02-20 23:40:56,128 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:56,128 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:56,128 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 24 states have (on average 1.3333333333333333) internal successors, (32), 27 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) Second operand 34 states. [2022-02-20 23:40:56,128 INFO L87 Difference]: Start difference. First operand has 28 states, 24 states have (on average 1.3333333333333333) internal successors, (32), 27 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) Second operand 34 states. [2022-02-20 23:40:56,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:56,129 INFO L93 Difference]: Finished difference Result 34 states and 38 transitions. [2022-02-20 23:40:56,129 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 38 transitions. [2022-02-20 23:40:56,129 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:56,129 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:56,130 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:56,130 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:56,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 24 states have (on average 1.3333333333333333) internal successors, (32), 27 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:40:56,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 32 transitions. [2022-02-20 23:40:56,131 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 32 transitions. Word has length 10 [2022-02-20 23:40:56,131 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:56,131 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 32 transitions. [2022-02-20 23:40:56,131 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 2.5) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,131 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 32 transitions. [2022-02-20 23:40:56,131 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:40:56,132 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:56,132 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:56,132 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:40:56,132 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:56,132 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:56,133 INFO L85 PathProgramCache]: Analyzing trace with hash 952918382, now seen corresponding path program 1 times [2022-02-20 23:40:56,133 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:56,133 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1649021371] [2022-02-20 23:40:56,133 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:56,133 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:56,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:56,165 INFO L290 TraceCheckUtils]: 0: Hoare triple {1331#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1331#true} is VALID [2022-02-20 23:40:56,166 INFO L290 TraceCheckUtils]: 1: Hoare triple {1331#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {1331#true} is VALID [2022-02-20 23:40:56,166 INFO L290 TraceCheckUtils]: 2: Hoare triple {1331#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1333#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:40:56,167 INFO L290 TraceCheckUtils]: 3: Hoare triple {1333#(<= |ULTIMATE.start_main_~length1~0#1| 1)} assume !(main_~length2~0#1 < 1); {1333#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:40:56,167 INFO L290 TraceCheckUtils]: 4: Hoare triple {1333#(<= |ULTIMATE.start_main_~length1~0#1| 1)} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {1334#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1))} is VALID [2022-02-20 23:40:56,168 INFO L290 TraceCheckUtils]: 5: Hoare triple {1334#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {1332#false} is VALID [2022-02-20 23:40:56,168 INFO L290 TraceCheckUtils]: 6: Hoare triple {1332#false} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {1332#false} is VALID [2022-02-20 23:40:56,168 INFO L290 TraceCheckUtils]: 7: Hoare triple {1332#false} havoc main_#t~nondet10#1; {1332#false} is VALID [2022-02-20 23:40:56,168 INFO L290 TraceCheckUtils]: 8: Hoare triple {1332#false} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {1332#false} is VALID [2022-02-20 23:40:56,169 INFO L290 TraceCheckUtils]: 9: Hoare triple {1332#false} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {1332#false} is VALID [2022-02-20 23:40:56,169 INFO L290 TraceCheckUtils]: 10: Hoare triple {1332#false} assume !(1 + (main_~nondetString~0#1.offset + main_~i~0#1) <= #length[main_~nondetString~0#1.base] && 0 <= main_~nondetString~0#1.offset + main_~i~0#1); {1332#false} is VALID [2022-02-20 23:40:56,169 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:56,169 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:56,169 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1649021371] [2022-02-20 23:40:56,169 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1649021371] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:56,169 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:56,170 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:40:56,170 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1817282200] [2022-02-20 23:40:56,170 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:56,170 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 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:40:56,170 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:56,170 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 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:40:56,178 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:40:56,178 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:56,178 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:56,178 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:56,178 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:56,179 INFO L87 Difference]: Start difference. First operand 28 states and 32 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 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:40:56,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:56,232 INFO L93 Difference]: Finished difference Result 47 states and 52 transitions. [2022-02-20 23:40:56,232 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:56,232 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 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:40:56,232 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:56,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 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:40:56,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 42 transitions. [2022-02-20 23:40:56,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 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:40:56,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 42 transitions. [2022-02-20 23:40:56,233 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 42 transitions. [2022-02-20 23:40:56,260 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:40:56,261 INFO L225 Difference]: With dead ends: 47 [2022-02-20 23:40:56,261 INFO L226 Difference]: Without dead ends: 47 [2022-02-20 23:40:56,261 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:40:56,262 INFO L933 BasicCegarLoop]: 22 mSDtfsCounter, 28 mSDsluCounter, 36 mSDsCounter, 0 mSdLazyCounter, 16 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 58 SdHoareTripleChecker+Invalid, 16 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 16 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:56,262 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [28 Valid, 58 Invalid, 16 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 16 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:56,262 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-02-20 23:40:56,263 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 29. [2022-02-20 23:40:56,263 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:56,263 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 29 states, 25 states have (on average 1.36) internal successors, (34), 28 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,263 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 29 states, 25 states have (on average 1.36) internal successors, (34), 28 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,263 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 29 states, 25 states have (on average 1.36) internal successors, (34), 28 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:56,264 INFO L93 Difference]: Finished difference Result 47 states and 52 transitions. [2022-02-20 23:40:56,264 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 52 transitions. [2022-02-20 23:40:56,264 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:56,264 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:56,265 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 25 states have (on average 1.36) internal successors, (34), 28 states have internal predecessors, (34), 0 states have call successors, (0), 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 47 states. [2022-02-20 23:40:56,265 INFO L87 Difference]: Start difference. First operand has 29 states, 25 states have (on average 1.36) internal successors, (34), 28 states have internal predecessors, (34), 0 states have call successors, (0), 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 47 states. [2022-02-20 23:40:56,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:56,265 INFO L93 Difference]: Finished difference Result 47 states and 52 transitions. [2022-02-20 23:40:56,265 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 52 transitions. [2022-02-20 23:40:56,266 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:56,266 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:56,266 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:56,266 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:56,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 25 states have (on average 1.36) internal successors, (34), 28 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:56,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 34 transitions. [2022-02-20 23:40:56,266 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 34 transitions. Word has length 11 [2022-02-20 23:40:56,267 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:56,267 INFO L470 AbstractCegarLoop]: Abstraction has 29 states and 34 transitions. [2022-02-20 23:40:56,267 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 4 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:40:56,267 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 34 transitions. [2022-02-20 23:40:56,267 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:40:56,267 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:56,267 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:56,267 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 23:40:56,268 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:56,268 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:56,268 INFO L85 PathProgramCache]: Analyzing trace with hash 1632976752, now seen corresponding path program 1 times [2022-02-20 23:40:56,268 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:56,268 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [443597699] [2022-02-20 23:40:56,268 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:56,268 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:56,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:56,337 INFO L290 TraceCheckUtils]: 0: Hoare triple {1509#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1509#true} is VALID [2022-02-20 23:40:56,337 INFO L290 TraceCheckUtils]: 1: Hoare triple {1509#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {1509#true} is VALID [2022-02-20 23:40:56,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {1509#true} assume !(main_~length1~0#1 < 1); {1509#true} is VALID [2022-02-20 23:40:56,337 INFO L290 TraceCheckUtils]: 3: Hoare triple {1509#true} assume !(main_~length2~0#1 < 1); {1509#true} is VALID [2022-02-20 23:40:56,338 INFO L290 TraceCheckUtils]: 4: Hoare triple {1509#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {1511#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:56,338 INFO L290 TraceCheckUtils]: 5: Hoare triple {1511#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {1511#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:56,339 INFO L290 TraceCheckUtils]: 6: Hoare triple {1511#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {1511#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:56,339 INFO L290 TraceCheckUtils]: 7: Hoare triple {1511#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {1511#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:56,340 INFO L290 TraceCheckUtils]: 8: Hoare triple {1511#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {1512#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:56,340 INFO L290 TraceCheckUtils]: 9: Hoare triple {1512#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {1513#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:56,341 INFO L290 TraceCheckUtils]: 10: Hoare triple {1513#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !(1 + (main_~nondetString~0#1.offset + main_~i~0#1) <= #length[main_~nondetString~0#1.base] && 0 <= main_~nondetString~0#1.offset + main_~i~0#1); {1510#false} is VALID [2022-02-20 23:40:56,341 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:40:56,341 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:56,341 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [443597699] [2022-02-20 23:40:56,341 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [443597699] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:40:56,341 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [543260] [2022-02-20 23:40:56,341 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:56,341 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:56,342 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:56,350 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:40:56,351 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:40:56,411 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:56,428 INFO L263 TraceCheckSpWp]: Trace formula consists of 69 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:40:56,439 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:56,442 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:56,578 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:40:56,578 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 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:40:56,675 INFO L290 TraceCheckUtils]: 0: Hoare triple {1509#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1509#true} is VALID [2022-02-20 23:40:56,675 INFO L290 TraceCheckUtils]: 1: Hoare triple {1509#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {1509#true} is VALID [2022-02-20 23:40:56,675 INFO L290 TraceCheckUtils]: 2: Hoare triple {1509#true} assume !(main_~length1~0#1 < 1); {1509#true} is VALID [2022-02-20 23:40:56,676 INFO L290 TraceCheckUtils]: 3: Hoare triple {1509#true} assume !(main_~length2~0#1 < 1); {1509#true} is VALID [2022-02-20 23:40:56,676 INFO L290 TraceCheckUtils]: 4: Hoare triple {1509#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {1529#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:56,677 INFO L290 TraceCheckUtils]: 5: Hoare triple {1529#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {1529#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:56,677 INFO L290 TraceCheckUtils]: 6: Hoare triple {1529#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {1529#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:56,679 INFO L290 TraceCheckUtils]: 7: Hoare triple {1529#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {1529#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:56,680 INFO L290 TraceCheckUtils]: 8: Hoare triple {1529#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {1512#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:56,681 INFO L290 TraceCheckUtils]: 9: Hoare triple {1512#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {1513#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:56,681 INFO L290 TraceCheckUtils]: 10: Hoare triple {1513#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !(1 + (main_~nondetString~0#1.offset + main_~i~0#1) <= #length[main_~nondetString~0#1.base] && 0 <= main_~nondetString~0#1.offset + main_~i~0#1); {1510#false} is VALID [2022-02-20 23:40:56,681 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:40:56,682 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:56,941 INFO L290 TraceCheckUtils]: 10: Hoare triple {1548#(and (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)))} assume !(1 + (main_~nondetString~0#1.offset + main_~i~0#1) <= #length[main_~nondetString~0#1.base] && 0 <= main_~nondetString~0#1.offset + main_~i~0#1); {1510#false} is VALID [2022-02-20 23:40:56,942 INFO L290 TraceCheckUtils]: 9: Hoare triple {1552#(or (and (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|))) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {1548#(and (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)))} is VALID [2022-02-20 23:40:56,943 INFO L290 TraceCheckUtils]: 8: Hoare triple {1556#(and (or (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (+ (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 1))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {1552#(or (and (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|))) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:56,943 INFO L290 TraceCheckUtils]: 7: Hoare triple {1556#(and (or (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (+ (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 1))))} havoc main_#t~nondet10#1; {1556#(and (or (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (+ (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 1))))} is VALID [2022-02-20 23:40:56,944 INFO L290 TraceCheckUtils]: 6: Hoare triple {1556#(and (or (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (+ (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 1))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {1556#(and (or (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (+ (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 1))))} is VALID [2022-02-20 23:40:56,944 INFO L290 TraceCheckUtils]: 5: Hoare triple {1556#(and (or (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (+ (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 1))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {1556#(and (or (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (+ (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 1))))} is VALID [2022-02-20 23:40:56,945 INFO L290 TraceCheckUtils]: 4: Hoare triple {1509#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {1556#(and (or (<= 0 (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (+ (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 1))))} is VALID [2022-02-20 23:40:56,945 INFO L290 TraceCheckUtils]: 3: Hoare triple {1509#true} assume !(main_~length2~0#1 < 1); {1509#true} is VALID [2022-02-20 23:40:56,945 INFO L290 TraceCheckUtils]: 2: Hoare triple {1509#true} assume !(main_~length1~0#1 < 1); {1509#true} is VALID [2022-02-20 23:40:56,945 INFO L290 TraceCheckUtils]: 1: Hoare triple {1509#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {1509#true} is VALID [2022-02-20 23:40:56,945 INFO L290 TraceCheckUtils]: 0: Hoare triple {1509#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1509#true} is VALID [2022-02-20 23:40:56,946 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:40:56,946 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [543260] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:56,946 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:40:56,946 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 8 [2022-02-20 23:40:56,946 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2039228080] [2022-02-20 23:40:56,946 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:56,946 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 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 11 [2022-02-20 23:40:56,946 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:56,947 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 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:40:56,970 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:40:56,970 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:40:56,970 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:56,970 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:40:56,970 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:40:56,970 INFO L87 Difference]: Start difference. First operand 29 states and 34 transitions. Second operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 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:40:57,242 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:57,242 INFO L93 Difference]: Finished difference Result 59 states and 65 transitions. [2022-02-20 23:40:57,242 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:40:57,243 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 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 11 [2022-02-20 23:40:57,243 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:57,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 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:40:57,243 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 56 transitions. [2022-02-20 23:40:57,244 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 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:40:57,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 56 transitions. [2022-02-20 23:40:57,244 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 56 transitions. [2022-02-20 23:40:57,290 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 56 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:57,291 INFO L225 Difference]: With dead ends: 59 [2022-02-20 23:40:57,291 INFO L226 Difference]: Without dead ends: 59 [2022-02-20 23:40:57,291 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 16 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=49, Invalid=83, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:40:57,292 INFO L933 BasicCegarLoop]: 27 mSDtfsCounter, 86 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 86 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 97 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:57,292 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [86 Valid, 77 Invalid, 97 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:40:57,293 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-02-20 23:40:57,293 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 26. [2022-02-20 23:40:57,293 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:57,294 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 26 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,294 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 26 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,294 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 26 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:57,295 INFO L93 Difference]: Finished difference Result 59 states and 65 transitions. [2022-02-20 23:40:57,295 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 65 transitions. [2022-02-20 23:40:57,295 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:57,295 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:57,295 INFO L74 IsIncluded]: Start isIncluded. First operand has 26 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 59 states. [2022-02-20 23:40:57,295 INFO L87 Difference]: Start difference. First operand has 26 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 59 states. [2022-02-20 23:40:57,296 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:57,296 INFO L93 Difference]: Finished difference Result 59 states and 65 transitions. [2022-02-20 23:40:57,297 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 65 transitions. [2022-02-20 23:40:57,297 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:57,297 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:57,297 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:57,297 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:57,297 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 23 states have (on average 1.3043478260869565) internal successors, (30), 25 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 30 transitions. [2022-02-20 23:40:57,298 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 30 transitions. Word has length 11 [2022-02-20 23:40:57,298 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:57,298 INFO L470 AbstractCegarLoop]: Abstraction has 26 states and 30 transitions. [2022-02-20 23:40:57,298 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 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:40:57,298 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 30 transitions. [2022-02-20 23:40:57,298 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:40:57,298 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:57,299 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:57,322 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-02-20 23:40:57,507 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable11 [2022-02-20 23:40:57,507 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:57,508 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:57,508 INFO L85 PathProgramCache]: Analyzing trace with hash 1794944983, now seen corresponding path program 1 times [2022-02-20 23:40:57,508 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:57,508 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2145982631] [2022-02-20 23:40:57,508 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:57,508 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:57,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:57,625 INFO L290 TraceCheckUtils]: 0: Hoare triple {1789#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1789#true} is VALID [2022-02-20 23:40:57,626 INFO L290 TraceCheckUtils]: 1: Hoare triple {1789#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {1789#true} is VALID [2022-02-20 23:40:57,626 INFO L290 TraceCheckUtils]: 2: Hoare triple {1789#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1789#true} is VALID [2022-02-20 23:40:57,627 INFO L290 TraceCheckUtils]: 3: Hoare triple {1789#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {1791#(and (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:57,628 INFO L290 TraceCheckUtils]: 4: Hoare triple {1791#(and (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {1792#(and (= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:57,629 INFO L290 TraceCheckUtils]: 5: Hoare triple {1792#(and (= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {1792#(and (= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:57,630 INFO L290 TraceCheckUtils]: 6: Hoare triple {1792#(and (= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {1793#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))} is VALID [2022-02-20 23:40:57,630 INFO L290 TraceCheckUtils]: 7: Hoare triple {1793#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {1794#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:40:57,631 INFO L290 TraceCheckUtils]: 8: Hoare triple {1794#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {1795#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:40:57,631 INFO L290 TraceCheckUtils]: 9: Hoare triple {1795#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {1795#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:40:57,632 INFO L290 TraceCheckUtils]: 10: Hoare triple {1795#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {1790#false} is VALID [2022-02-20 23:40:57,632 INFO L290 TraceCheckUtils]: 11: Hoare triple {1790#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {1790#false} is VALID [2022-02-20 23:40:57,632 INFO L290 TraceCheckUtils]: 12: Hoare triple {1790#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {1790#false} is VALID [2022-02-20 23:40:57,632 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:40:57,633 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:57,633 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2145982631] [2022-02-20 23:40:57,633 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2145982631] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:57,633 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:57,633 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:40:57,633 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [62731929] [2022-02-20 23:40:57,633 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:57,634 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:57,634 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:57,634 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,642 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:57,643 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:40:57,643 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:57,643 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:40:57,643 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:40:57,643 INFO L87 Difference]: Start difference. First operand 26 states and 30 transitions. Second operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:57,772 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-02-20 23:40:57,772 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:40:57,772 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:57,772 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:57,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 35 transitions. [2022-02-20 23:40:57,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 35 transitions. [2022-02-20 23:40:57,773 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 35 transitions. [2022-02-20 23:40:57,796 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:57,797 INFO L225 Difference]: With dead ends: 37 [2022-02-20 23:40:57,797 INFO L226 Difference]: Without dead ends: 37 [2022-02-20 23:40:57,797 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:40:57,798 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 17 mSDsluCounter, 79 mSDsCounter, 0 mSdLazyCounter, 47 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 96 SdHoareTripleChecker+Invalid, 53 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 47 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:57,798 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 96 Invalid, 53 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 47 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:57,798 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-02-20 23:40:57,799 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 33. [2022-02-20 23:40:57,799 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:57,799 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 33 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 32 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:40:57,799 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 33 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 32 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:40:57,799 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 33 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 32 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:40:57,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:57,800 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-02-20 23:40:57,800 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 40 transitions. [2022-02-20 23:40:57,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:57,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:57,800 INFO L74 IsIncluded]: Start isIncluded. First operand has 33 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 32 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 37 states. [2022-02-20 23:40:57,800 INFO L87 Difference]: Start difference. First operand has 33 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 32 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 37 states. [2022-02-20 23:40:57,801 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:57,801 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-02-20 23:40:57,801 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 40 transitions. [2022-02-20 23:40:57,801 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:57,801 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:57,801 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:57,801 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:57,801 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 32 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:40:57,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 37 transitions. [2022-02-20 23:40:57,802 INFO L78 Accepts]: Start accepts. Automaton has 33 states and 37 transitions. Word has length 13 [2022-02-20 23:40:57,802 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:57,802 INFO L470 AbstractCegarLoop]: Abstraction has 33 states and 37 transitions. [2022-02-20 23:40:57,802 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,802 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 37 transitions. [2022-02-20 23:40:57,802 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:40:57,802 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:57,802 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:57,802 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-20 23:40:57,802 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:57,802 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:57,802 INFO L85 PathProgramCache]: Analyzing trace with hash 1401917973, now seen corresponding path program 1 times [2022-02-20 23:40:57,803 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:57,803 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1724110109] [2022-02-20 23:40:57,803 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:57,803 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:57,827 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:57,892 INFO L290 TraceCheckUtils]: 0: Hoare triple {1948#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1948#true} is VALID [2022-02-20 23:40:57,892 INFO L290 TraceCheckUtils]: 1: Hoare triple {1948#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {1948#true} is VALID [2022-02-20 23:40:57,893 INFO L290 TraceCheckUtils]: 2: Hoare triple {1948#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1950#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:40:57,893 INFO L290 TraceCheckUtils]: 3: Hoare triple {1950#(<= |ULTIMATE.start_main_~length1~0#1| 1)} assume !(main_~length2~0#1 < 1); {1950#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:40:57,894 INFO L290 TraceCheckUtils]: 4: Hoare triple {1950#(<= |ULTIMATE.start_main_~length1~0#1| 1)} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {1951#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1))} is VALID [2022-02-20 23:40:57,894 INFO L290 TraceCheckUtils]: 5: Hoare triple {1951#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {1951#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1))} is VALID [2022-02-20 23:40:57,895 INFO L290 TraceCheckUtils]: 6: Hoare triple {1951#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {1952#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0)} is VALID [2022-02-20 23:40:57,895 INFO L290 TraceCheckUtils]: 7: Hoare triple {1952#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0)} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {1953#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:40:57,896 INFO L290 TraceCheckUtils]: 8: Hoare triple {1953#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {1954#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:40:57,896 INFO L290 TraceCheckUtils]: 9: Hoare triple {1954#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {1954#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:40:57,896 INFO L290 TraceCheckUtils]: 10: Hoare triple {1954#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {1949#false} is VALID [2022-02-20 23:40:57,896 INFO L290 TraceCheckUtils]: 11: Hoare triple {1949#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {1949#false} is VALID [2022-02-20 23:40:57,897 INFO L290 TraceCheckUtils]: 12: Hoare triple {1949#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {1949#false} is VALID [2022-02-20 23:40:57,897 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:40:57,897 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:57,897 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1724110109] [2022-02-20 23:40:57,897 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1724110109] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:57,897 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:57,897 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:40:57,898 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1673773755] [2022-02-20 23:40:57,898 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:57,899 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:57,899 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:57,899 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:57,907 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:57,907 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:40:57,907 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:57,908 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:40:57,908 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:40:57,908 INFO L87 Difference]: Start difference. First operand 33 states and 37 transitions. Second operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,068 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,068 INFO L93 Difference]: Finished difference Result 49 states and 52 transitions. [2022-02-20 23:40:58,069 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:40:58,069 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:58,069 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:58,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,069 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 37 transitions. [2022-02-20 23:40:58,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,070 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 37 transitions. [2022-02-20 23:40:58,070 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 37 transitions. [2022-02-20 23:40:58,095 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:58,095 INFO L225 Difference]: With dead ends: 49 [2022-02-20 23:40:58,095 INFO L226 Difference]: Without dead ends: 49 [2022-02-20 23:40:58,095 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=39, Invalid=71, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:40:58,096 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 24 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 44 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 99 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 44 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:58,096 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 99 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 44 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:40:58,096 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2022-02-20 23:40:58,097 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 31. [2022-02-20 23:40:58,097 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:58,097 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand has 31 states, 28 states have (on average 1.25) internal successors, (35), 30 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,097 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand has 31 states, 28 states have (on average 1.25) internal successors, (35), 30 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,097 INFO L87 Difference]: Start difference. First operand 49 states. Second operand has 31 states, 28 states have (on average 1.25) internal successors, (35), 30 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,098 INFO L93 Difference]: Finished difference Result 49 states and 52 transitions. [2022-02-20 23:40:58,098 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 52 transitions. [2022-02-20 23:40:58,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:58,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:58,098 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 28 states have (on average 1.25) internal successors, (35), 30 states have internal predecessors, (35), 0 states have call successors, (0), 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 49 states. [2022-02-20 23:40:58,098 INFO L87 Difference]: Start difference. First operand has 31 states, 28 states have (on average 1.25) internal successors, (35), 30 states have internal predecessors, (35), 0 states have call successors, (0), 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 49 states. [2022-02-20 23:40:58,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,099 INFO L93 Difference]: Finished difference Result 49 states and 52 transitions. [2022-02-20 23:40:58,099 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 52 transitions. [2022-02-20 23:40:58,099 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:58,099 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:58,099 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:58,099 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:58,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 28 states have (on average 1.25) internal successors, (35), 30 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 35 transitions. [2022-02-20 23:40:58,099 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 35 transitions. Word has length 13 [2022-02-20 23:40:58,099 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:58,100 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 35 transitions. [2022-02-20 23:40:58,100 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,100 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 35 transitions. [2022-02-20 23:40:58,100 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:40:58,100 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:58,100 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:58,100 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-02-20 23:40:58,100 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:58,100 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:58,100 INFO L85 PathProgramCache]: Analyzing trace with hash 2102982551, now seen corresponding path program 1 times [2022-02-20 23:40:58,100 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:58,100 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [772881884] [2022-02-20 23:40:58,101 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:58,101 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:58,113 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:58,181 INFO L290 TraceCheckUtils]: 0: Hoare triple {2143#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2143#true} is VALID [2022-02-20 23:40:58,182 INFO L290 TraceCheckUtils]: 1: Hoare triple {2143#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2143#true} is VALID [2022-02-20 23:40:58,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {2143#true} assume !(main_~length1~0#1 < 1); {2143#true} is VALID [2022-02-20 23:40:58,182 INFO L290 TraceCheckUtils]: 3: Hoare triple {2143#true} assume !(main_~length2~0#1 < 1); {2143#true} is VALID [2022-02-20 23:40:58,183 INFO L290 TraceCheckUtils]: 4: Hoare triple {2143#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2145#(and (or (= |ULTIMATE.start_main_~length2~0#1| 1) (not (= (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0)) (= (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 0)))} is VALID [2022-02-20 23:40:58,183 INFO L290 TraceCheckUtils]: 5: Hoare triple {2145#(and (or (= |ULTIMATE.start_main_~length2~0#1| 1) (not (= (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0)) (= (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 0)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2146#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1))} is VALID [2022-02-20 23:40:58,184 INFO L290 TraceCheckUtils]: 6: Hoare triple {2146#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 1))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2147#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0)} is VALID [2022-02-20 23:40:58,185 INFO L290 TraceCheckUtils]: 7: Hoare triple {2147#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0)} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2148#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:40:58,185 INFO L290 TraceCheckUtils]: 8: Hoare triple {2148#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2149#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:40:58,185 INFO L290 TraceCheckUtils]: 9: Hoare triple {2149#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2149#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:40:58,186 INFO L290 TraceCheckUtils]: 10: Hoare triple {2149#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2144#false} is VALID [2022-02-20 23:40:58,186 INFO L290 TraceCheckUtils]: 11: Hoare triple {2144#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2144#false} is VALID [2022-02-20 23:40:58,186 INFO L290 TraceCheckUtils]: 12: Hoare triple {2144#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {2144#false} is VALID [2022-02-20 23:40:58,186 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:40:58,186 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:58,186 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [772881884] [2022-02-20 23:40:58,186 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [772881884] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:58,186 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:58,186 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:40:58,186 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1606587216] [2022-02-20 23:40:58,186 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:58,187 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:58,187 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:58,187 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,200 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 13 edges. 13 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:58,200 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:40:58,200 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:58,201 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:40:58,201 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=11, Invalid=31, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:40:58,201 INFO L87 Difference]: Start difference. First operand 31 states and 35 transitions. Second operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,463 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:58,463 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:40:58,464 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:40:58,464 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:58,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 38 transitions. [2022-02-20 23:40:58,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,465 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 38 transitions. [2022-02-20 23:40:58,465 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 38 transitions. [2022-02-20 23:40:58,495 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:40:58,496 INFO L225 Difference]: With dead ends: 44 [2022-02-20 23:40:58,496 INFO L226 Difference]: Without dead ends: 44 [2022-02-20 23:40:58,496 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=39, Invalid=71, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:40:58,496 INFO L933 BasicCegarLoop]: 15 mSDtfsCounter, 25 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 58 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 66 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 58 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:58,496 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [25 Valid, 85 Invalid, 66 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 58 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:58,497 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-02-20 23:40:58,497 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 32. [2022-02-20 23:40:58,497 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:58,498 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 32 states, 29 states have (on average 1.2758620689655173) internal successors, (37), 31 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:40:58,498 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 32 states, 29 states have (on average 1.2758620689655173) internal successors, (37), 31 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:40:58,498 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 32 states, 29 states have (on average 1.2758620689655173) internal successors, (37), 31 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:40:58,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,498 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:58,498 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 48 transitions. [2022-02-20 23:40:58,498 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:58,498 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:58,498 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 29 states have (on average 1.2758620689655173) internal successors, (37), 31 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 44 states. [2022-02-20 23:40:58,499 INFO L87 Difference]: Start difference. First operand has 32 states, 29 states have (on average 1.2758620689655173) internal successors, (37), 31 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 44 states. [2022-02-20 23:40:58,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,499 INFO L93 Difference]: Finished difference Result 44 states and 48 transitions. [2022-02-20 23:40:58,499 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 48 transitions. [2022-02-20 23:40:58,499 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:58,499 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:58,499 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:58,499 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:58,499 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 29 states have (on average 1.2758620689655173) internal successors, (37), 31 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:40:58,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 37 transitions. [2022-02-20 23:40:58,507 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 37 transitions. Word has length 13 [2022-02-20 23:40:58,507 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:58,507 INFO L470 AbstractCegarLoop]: Abstraction has 32 states and 37 transitions. [2022-02-20 23:40:58,507 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 1.8571428571428572) internal successors, (13), 7 states have internal predecessors, (13), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,507 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 37 transitions. [2022-02-20 23:40:58,508 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-20 23:40:58,508 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:58,508 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:58,508 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 23:40:58,508 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr8ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:58,508 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:58,508 INFO L85 PathProgramCache]: Analyzing trace with hash -191335553, now seen corresponding path program 1 times [2022-02-20 23:40:58,508 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:58,508 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [676464402] [2022-02-20 23:40:58,509 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:58,509 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:58,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:58,554 INFO L290 TraceCheckUtils]: 0: Hoare triple {2324#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2324#true} is VALID [2022-02-20 23:40:58,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {2324#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2326#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:40:58,555 INFO L290 TraceCheckUtils]: 2: Hoare triple {2326#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {2326#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:40:58,555 INFO L290 TraceCheckUtils]: 3: Hoare triple {2326#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2326#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:40:58,556 INFO L290 TraceCheckUtils]: 4: Hoare triple {2326#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} is VALID [2022-02-20 23:40:58,557 INFO L290 TraceCheckUtils]: 5: Hoare triple {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} is VALID [2022-02-20 23:40:58,557 INFO L290 TraceCheckUtils]: 6: Hoare triple {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} is VALID [2022-02-20 23:40:58,558 INFO L290 TraceCheckUtils]: 7: Hoare triple {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} is VALID [2022-02-20 23:40:58,558 INFO L290 TraceCheckUtils]: 8: Hoare triple {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} is VALID [2022-02-20 23:40:58,558 INFO L290 TraceCheckUtils]: 9: Hoare triple {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} is VALID [2022-02-20 23:40:58,559 INFO L290 TraceCheckUtils]: 10: Hoare triple {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} assume !(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} is VALID [2022-02-20 23:40:58,559 INFO L290 TraceCheckUtils]: 11: Hoare triple {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} cstrcpy_#res#1.base, cstrcpy_#res#1.offset := cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset; {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} is VALID [2022-02-20 23:40:58,560 INFO L290 TraceCheckUtils]: 12: Hoare triple {2327#(and (not (= |ULTIMATE.start_main_#t~malloc8#1.base| |ULTIMATE.start_main_#t~malloc7#1.base|)) (= |ULTIMATE.start_main_old_#valid#1| (store (store |#valid| |ULTIMATE.start_main_#t~malloc8#1.base| 0) |ULTIMATE.start_main_#t~malloc7#1.base| 0)))} main_#t~ret11#1.base, main_#t~ret11#1.offset := cstrcpy_#res#1.base, cstrcpy_#res#1.offset;assume { :end_inline_cstrcpy } true;havoc main_#t~ret11#1.base, main_#t~ret11#1.offset;main_#res#1 := 0;call ULTIMATE.dealloc(main_#t~malloc7#1.base, main_#t~malloc7#1.offset);havoc main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call ULTIMATE.dealloc(main_#t~malloc8#1.base, main_#t~malloc8#1.offset);havoc main_#t~malloc8#1.base, main_#t~malloc8#1.offset; {2326#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:40:58,560 INFO L290 TraceCheckUtils]: 13: Hoare triple {2326#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {2325#false} is VALID [2022-02-20 23:40:58,560 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:40:58,560 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:58,560 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [676464402] [2022-02-20 23:40:58,561 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [676464402] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:40:58,561 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:40:58,561 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:40:58,561 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1244422879] [2022-02-20 23:40:58,561 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:40:58,561 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:40:58,561 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:58,562 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,570 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:58,570 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:40:58,570 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:58,570 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:40:58,570 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:40:58,571 INFO L87 Difference]: Start difference. First operand 32 states and 37 transitions. Second operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,606 INFO L93 Difference]: Finished difference Result 31 states and 36 transitions. [2022-02-20 23:40:58,606 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:40:58,607 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:40:58,607 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:58,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 24 transitions. [2022-02-20 23:40:58,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 24 transitions. [2022-02-20 23:40:58,608 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 24 transitions. [2022-02-20 23:40:58,628 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:58,628 INFO L225 Difference]: With dead ends: 31 [2022-02-20 23:40:58,629 INFO L226 Difference]: Without dead ends: 20 [2022-02-20 23:40:58,629 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:40:58,629 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 10 mSDsluCounter, 15 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 10 SdHoareTripleChecker+Valid, 32 SdHoareTripleChecker+Invalid, 15 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:58,630 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [10 Valid, 32 Invalid, 15 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:40:58,630 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states. [2022-02-20 23:40:58,631 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 20. [2022-02-20 23:40:58,631 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:58,631 INFO L82 GeneralOperation]: Start isEquivalent. First operand 20 states. Second operand has 20 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,631 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states. Second operand has 20 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,631 INFO L87 Difference]: Start difference. First operand 20 states. Second operand has 20 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,632 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,632 INFO L93 Difference]: Finished difference Result 20 states and 21 transitions. [2022-02-20 23:40:58,632 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 21 transitions. [2022-02-20 23:40:58,632 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:58,632 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:58,632 INFO L74 IsIncluded]: Start isIncluded. First operand has 20 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 0 states have call successors, (0), 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 20 states. [2022-02-20 23:40:58,632 INFO L87 Difference]: Start difference. First operand has 20 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 0 states have call successors, (0), 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 20 states. [2022-02-20 23:40:58,633 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:58,633 INFO L93 Difference]: Finished difference Result 20 states and 21 transitions. [2022-02-20 23:40:58,633 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 21 transitions. [2022-02-20 23:40:58,633 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:58,633 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:58,633 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:58,633 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:58,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 19 states have internal predecessors, (21), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 21 transitions. [2022-02-20 23:40:58,634 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 21 transitions. Word has length 14 [2022-02-20 23:40:58,634 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:58,634 INFO L470 AbstractCegarLoop]: Abstraction has 20 states and 21 transitions. [2022-02-20 23:40:58,634 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.666666666666667) internal successors, (14), 4 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:58,634 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 21 transitions. [2022-02-20 23:40:58,634 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-02-20 23:40:58,634 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:58,635 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:58,635 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2022-02-20 23:40:58,635 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:58,635 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:58,635 INFO L85 PathProgramCache]: Analyzing trace with hash 70337178, now seen corresponding path program 1 times [2022-02-20 23:40:58,635 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:58,635 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [481127318] [2022-02-20 23:40:58,636 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:58,636 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:58,649 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:58,721 INFO L290 TraceCheckUtils]: 0: Hoare triple {2421#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2421#true} is VALID [2022-02-20 23:40:58,721 INFO L290 TraceCheckUtils]: 1: Hoare triple {2421#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2421#true} is VALID [2022-02-20 23:40:58,721 INFO L290 TraceCheckUtils]: 2: Hoare triple {2421#true} assume !(main_~length1~0#1 < 1); {2421#true} is VALID [2022-02-20 23:40:58,721 INFO L290 TraceCheckUtils]: 3: Hoare triple {2421#true} assume !(main_~length2~0#1 < 1); {2421#true} is VALID [2022-02-20 23:40:58,722 INFO L290 TraceCheckUtils]: 4: Hoare triple {2421#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2423#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:40:58,722 INFO L290 TraceCheckUtils]: 5: Hoare triple {2423#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {2424#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:58,723 INFO L290 TraceCheckUtils]: 6: Hoare triple {2424#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {2424#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:58,723 INFO L290 TraceCheckUtils]: 7: Hoare triple {2424#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {2424#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:58,723 INFO L290 TraceCheckUtils]: 8: Hoare triple {2424#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {2425#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:58,725 INFO L290 TraceCheckUtils]: 9: Hoare triple {2425#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2425#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:58,726 INFO L290 TraceCheckUtils]: 10: Hoare triple {2425#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2426#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:40:58,726 INFO L290 TraceCheckUtils]: 11: Hoare triple {2426#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2427#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:40:58,727 INFO L290 TraceCheckUtils]: 12: Hoare triple {2427#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2427#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:40:58,727 INFO L290 TraceCheckUtils]: 13: Hoare triple {2427#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2427#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:40:58,728 INFO L290 TraceCheckUtils]: 14: Hoare triple {2427#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2427#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:40:58,728 INFO L290 TraceCheckUtils]: 15: Hoare triple {2427#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2428#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:40:58,728 INFO L290 TraceCheckUtils]: 16: Hoare triple {2428#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {2422#false} is VALID [2022-02-20 23:40:58,729 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:40:58,729 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:58,729 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [481127318] [2022-02-20 23:40:58,729 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [481127318] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:40:58,729 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1261053993] [2022-02-20 23:40:58,729 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:58,729 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:58,729 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:58,730 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:40:58,731 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:40:58,783 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:58,784 INFO L263 TraceCheckSpWp]: Trace formula consists of 118 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:40:58,796 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:58,797 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:58,985 INFO L290 TraceCheckUtils]: 0: Hoare triple {2421#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2421#true} is VALID [2022-02-20 23:40:58,985 INFO L290 TraceCheckUtils]: 1: Hoare triple {2421#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2421#true} is VALID [2022-02-20 23:40:58,985 INFO L290 TraceCheckUtils]: 2: Hoare triple {2421#true} assume !(main_~length1~0#1 < 1); {2421#true} is VALID [2022-02-20 23:40:58,985 INFO L290 TraceCheckUtils]: 3: Hoare triple {2421#true} assume !(main_~length2~0#1 < 1); {2421#true} is VALID [2022-02-20 23:40:58,986 INFO L290 TraceCheckUtils]: 4: Hoare triple {2421#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2444#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:58,987 INFO L290 TraceCheckUtils]: 5: Hoare triple {2444#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:58,987 INFO L290 TraceCheckUtils]: 6: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:58,987 INFO L290 TraceCheckUtils]: 7: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet10#1; {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:58,988 INFO L290 TraceCheckUtils]: 8: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:58,988 INFO L290 TraceCheckUtils]: 9: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:58,988 INFO L290 TraceCheckUtils]: 10: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2464#(< (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))} is VALID [2022-02-20 23:40:58,989 INFO L290 TraceCheckUtils]: 11: Hoare triple {2464#(< (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2468#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:40:58,989 INFO L290 TraceCheckUtils]: 12: Hoare triple {2468#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2472#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:40:58,993 INFO L290 TraceCheckUtils]: 13: Hoare triple {2472#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2472#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:40:58,993 INFO L290 TraceCheckUtils]: 14: Hoare triple {2472#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2472#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:40:58,994 INFO L290 TraceCheckUtils]: 15: Hoare triple {2472#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2428#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:40:58,995 INFO L290 TraceCheckUtils]: 16: Hoare triple {2428#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {2422#false} is VALID [2022-02-20 23:40:58,995 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:40:58,995 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:59,161 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:40:59,204 INFO L290 TraceCheckUtils]: 16: Hoare triple {2485#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {2422#false} is VALID [2022-02-20 23:40:59,205 INFO L290 TraceCheckUtils]: 15: Hoare triple {2489#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2485#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:40:59,205 INFO L290 TraceCheckUtils]: 14: Hoare triple {2489#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2489#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:40:59,206 INFO L290 TraceCheckUtils]: 13: Hoare triple {2489#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2489#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:40:59,206 INFO L290 TraceCheckUtils]: 12: Hoare triple {2499#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2489#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:40:59,207 INFO L290 TraceCheckUtils]: 11: Hoare triple {2503#(or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2499#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:40:59,207 INFO L290 TraceCheckUtils]: 10: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2503#(or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:40:59,208 INFO L290 TraceCheckUtils]: 9: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:59,209 INFO L290 TraceCheckUtils]: 8: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:59,209 INFO L290 TraceCheckUtils]: 7: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet10#1; {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:59,209 INFO L290 TraceCheckUtils]: 6: Hoare triple {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:59,226 INFO L290 TraceCheckUtils]: 5: Hoare triple {2444#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {2448#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:59,227 INFO L290 TraceCheckUtils]: 4: Hoare triple {2421#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2444#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:59,227 INFO L290 TraceCheckUtils]: 3: Hoare triple {2421#true} assume !(main_~length2~0#1 < 1); {2421#true} is VALID [2022-02-20 23:40:59,227 INFO L290 TraceCheckUtils]: 2: Hoare triple {2421#true} assume !(main_~length1~0#1 < 1); {2421#true} is VALID [2022-02-20 23:40:59,227 INFO L290 TraceCheckUtils]: 1: Hoare triple {2421#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2421#true} is VALID [2022-02-20 23:40:59,227 INFO L290 TraceCheckUtils]: 0: Hoare triple {2421#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2421#true} is VALID [2022-02-20 23:40:59,227 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:40:59,227 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1261053993] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:59,227 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:40:59,227 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7, 7] total 16 [2022-02-20 23:40:59,228 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1088506077] [2022-02-20 23:40:59,228 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:59,228 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:40:59,228 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:59,228 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:59,254 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:59,254 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:40:59,254 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:59,254 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:40:59,254 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=213, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:40:59,254 INFO L87 Difference]: Start difference. First operand 20 states and 21 transitions. Second operand has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:59,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:59,569 INFO L93 Difference]: Finished difference Result 30 states and 31 transitions. [2022-02-20 23:40:59,569 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:40:59,569 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 17 [2022-02-20 23:40:59,570 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:59,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:59,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 32 transitions. [2022-02-20 23:40:59,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:59,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 32 transitions. [2022-02-20 23:40:59,570 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 32 transitions. [2022-02-20 23:40:59,599 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:40:59,599 INFO L225 Difference]: With dead ends: 30 [2022-02-20 23:40:59,599 INFO L226 Difference]: Without dead ends: 30 [2022-02-20 23:40:59,600 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 43 GetRequests, 22 SyntacticMatches, 2 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 91 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=106, Invalid=314, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:40:59,600 INFO L933 BasicCegarLoop]: 8 mSDtfsCounter, 109 mSDsluCounter, 48 mSDsCounter, 0 mSdLazyCounter, 119 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 109 SdHoareTripleChecker+Valid, 56 SdHoareTripleChecker+Invalid, 146 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 119 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:59,600 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [109 Valid, 56 Invalid, 146 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 119 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:40:59,601 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-02-20 23:40:59,601 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 23. [2022-02-20 23:40:59,601 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:59,601 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand has 23 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 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:40:59,601 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand has 23 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 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:40:59,601 INFO L87 Difference]: Start difference. First operand 30 states. Second operand has 23 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 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:40:59,602 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:59,602 INFO L93 Difference]: Finished difference Result 30 states and 31 transitions. [2022-02-20 23:40:59,602 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 31 transitions. [2022-02-20 23:40:59,602 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:59,602 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:59,602 INFO L74 IsIncluded]: Start isIncluded. First operand has 23 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 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 30 states. [2022-02-20 23:40:59,602 INFO L87 Difference]: Start difference. First operand has 23 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 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 30 states. [2022-02-20 23:40:59,603 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:59,603 INFO L93 Difference]: Finished difference Result 30 states and 31 transitions. [2022-02-20 23:40:59,606 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 31 transitions. [2022-02-20 23:40:59,606 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:59,606 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:59,606 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:59,606 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:59,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 22 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:40:59,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 24 transitions. [2022-02-20 23:40:59,607 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 24 transitions. Word has length 17 [2022-02-20 23:40:59,607 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:59,607 INFO L470 AbstractCegarLoop]: Abstraction has 23 states and 24 transitions. [2022-02-20 23:40:59,607 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 2.25) internal successors, (36), 17 states have internal predecessors, (36), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:59,607 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 24 transitions. [2022-02-20 23:40:59,607 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 23:40:59,607 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:59,608 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:59,625 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:40:59,825 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,SelfDestructingSolverStorable16 [2022-02-20 23:40:59,825 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:40:59,826 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:59,826 INFO L85 PathProgramCache]: Analyzing trace with hash -2114514791, now seen corresponding path program 1 times [2022-02-20 23:40:59,826 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:59,826 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [448957793] [2022-02-20 23:40:59,826 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:59,826 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:59,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:59,928 INFO L290 TraceCheckUtils]: 0: Hoare triple {2657#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2657#true} is VALID [2022-02-20 23:40:59,929 INFO L290 TraceCheckUtils]: 1: Hoare triple {2657#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2657#true} is VALID [2022-02-20 23:40:59,929 INFO L290 TraceCheckUtils]: 2: Hoare triple {2657#true} assume !(main_~length1~0#1 < 1); {2657#true} is VALID [2022-02-20 23:40:59,929 INFO L290 TraceCheckUtils]: 3: Hoare triple {2657#true} assume !(main_~length2~0#1 < 1); {2657#true} is VALID [2022-02-20 23:40:59,930 INFO L290 TraceCheckUtils]: 4: Hoare triple {2657#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2659#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:40:59,931 INFO L290 TraceCheckUtils]: 5: Hoare triple {2659#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {2660#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:40:59,931 INFO L290 TraceCheckUtils]: 6: Hoare triple {2660#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {2660#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:40:59,932 INFO L290 TraceCheckUtils]: 7: Hoare triple {2660#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {2660#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:40:59,932 INFO L290 TraceCheckUtils]: 8: Hoare triple {2660#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {2661#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:40:59,933 INFO L290 TraceCheckUtils]: 9: Hoare triple {2661#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2661#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:40:59,933 INFO L290 TraceCheckUtils]: 10: Hoare triple {2661#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2661#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:40:59,934 INFO L290 TraceCheckUtils]: 11: Hoare triple {2661#(and (<= 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:40:59,934 INFO L290 TraceCheckUtils]: 12: Hoare triple {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:40:59,935 INFO L290 TraceCheckUtils]: 13: Hoare triple {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:40:59,935 INFO L290 TraceCheckUtils]: 14: Hoare triple {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:40:59,936 INFO L290 TraceCheckUtils]: 15: Hoare triple {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2663#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:40:59,936 INFO L290 TraceCheckUtils]: 16: Hoare triple {2663#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2663#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:40:59,941 INFO L290 TraceCheckUtils]: 17: Hoare triple {2663#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {2658#false} is VALID [2022-02-20 23:40:59,941 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:59,942 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:59,942 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [448957793] [2022-02-20 23:40:59,942 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [448957793] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:40:59,942 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1220702188] [2022-02-20 23:40:59,942 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:59,942 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:59,942 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:59,943 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:40:59,944 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:40:59,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:59,996 INFO L263 TraceCheckSpWp]: Trace formula consists of 124 conjuncts, 29 conjunts are in the unsatisfiable core [2022-02-20 23:41:00,005 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:00,006 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:00,119 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:41:00,119 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 11 [2022-02-20 23:41:00,128 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 10 treesize of output 8 [2022-02-20 23:41:00,299 INFO L290 TraceCheckUtils]: 0: Hoare triple {2657#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2657#true} is VALID [2022-02-20 23:41:00,299 INFO L290 TraceCheckUtils]: 1: Hoare triple {2657#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2657#true} is VALID [2022-02-20 23:41:00,300 INFO L290 TraceCheckUtils]: 2: Hoare triple {2657#true} assume !(main_~length1~0#1 < 1); {2657#true} is VALID [2022-02-20 23:41:00,300 INFO L290 TraceCheckUtils]: 3: Hoare triple {2657#true} assume !(main_~length2~0#1 < 1); {2657#true} is VALID [2022-02-20 23:41:00,302 INFO L290 TraceCheckUtils]: 4: Hoare triple {2657#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2679#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:00,302 INFO L290 TraceCheckUtils]: 5: Hoare triple {2679#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:00,304 INFO L290 TraceCheckUtils]: 6: Hoare triple {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:00,304 INFO L290 TraceCheckUtils]: 7: Hoare triple {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:00,304 INFO L290 TraceCheckUtils]: 8: Hoare triple {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:00,305 INFO L290 TraceCheckUtils]: 9: Hoare triple {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:00,306 INFO L290 TraceCheckUtils]: 10: Hoare triple {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:00,308 INFO L290 TraceCheckUtils]: 11: Hoare triple {2683#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2702#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 1 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:00,309 INFO L290 TraceCheckUtils]: 12: Hoare triple {2702#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 1 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2702#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 1 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:00,309 INFO L290 TraceCheckUtils]: 13: Hoare triple {2702#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 1 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:00,310 INFO L290 TraceCheckUtils]: 14: Hoare triple {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:00,310 INFO L290 TraceCheckUtils]: 15: Hoare triple {2662#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2715#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:00,311 INFO L290 TraceCheckUtils]: 16: Hoare triple {2715#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2715#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:00,311 INFO L290 TraceCheckUtils]: 17: Hoare triple {2715#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {2658#false} is VALID [2022-02-20 23:41:00,311 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:00,311 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:00,758 INFO L290 TraceCheckUtils]: 17: Hoare triple {2722#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {2658#false} is VALID [2022-02-20 23:41:00,758 INFO L290 TraceCheckUtils]: 16: Hoare triple {2722#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2722#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:00,759 INFO L290 TraceCheckUtils]: 15: Hoare triple {2729#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2722#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:00,760 INFO L290 TraceCheckUtils]: 14: Hoare triple {2729#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2729#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:00,760 INFO L290 TraceCheckUtils]: 13: Hoare triple {2736#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2729#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:00,761 INFO L290 TraceCheckUtils]: 12: Hoare triple {2736#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2736#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:00,761 INFO L290 TraceCheckUtils]: 11: Hoare triple {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2736#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:00,762 INFO L290 TraceCheckUtils]: 10: Hoare triple {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:00,762 INFO L290 TraceCheckUtils]: 9: Hoare triple {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:00,763 INFO L290 TraceCheckUtils]: 8: Hoare triple {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:00,763 INFO L290 TraceCheckUtils]: 7: Hoare triple {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:00,763 INFO L290 TraceCheckUtils]: 6: Hoare triple {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:00,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {2762#(or (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {2743#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:00,765 INFO L290 TraceCheckUtils]: 4: Hoare triple {2657#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2762#(or (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:00,765 INFO L290 TraceCheckUtils]: 3: Hoare triple {2657#true} assume !(main_~length2~0#1 < 1); {2657#true} is VALID [2022-02-20 23:41:00,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {2657#true} assume !(main_~length1~0#1 < 1); {2657#true} is VALID [2022-02-20 23:41:00,765 INFO L290 TraceCheckUtils]: 1: Hoare triple {2657#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2657#true} is VALID [2022-02-20 23:41:00,765 INFO L290 TraceCheckUtils]: 0: Hoare triple {2657#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2657#true} is VALID [2022-02-20 23:41:00,765 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 1 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:00,766 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1220702188] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:00,766 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:00,766 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 15 [2022-02-20 23:41:00,766 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1825986103] [2022-02-20 23:41:00,766 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:00,766 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 3.0) internal successors, (45), 16 states have internal predecessors, (45), 0 states have call successors, (0), 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:00,766 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:00,766 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 16 states, 15 states have (on average 3.0) internal successors, (45), 16 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:00,801 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:00,801 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-02-20 23:41:00,801 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:00,802 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-02-20 23:41:00,802 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:41:00,802 INFO L87 Difference]: Start difference. First operand 23 states and 24 transitions. Second operand has 16 states, 15 states have (on average 3.0) internal successors, (45), 16 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:01,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:01,133 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2022-02-20 23:41:01,134 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:41:01,134 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 15 states have (on average 3.0) internal successors, (45), 16 states have internal predecessors, (45), 0 states have call successors, (0), 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:01,134 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:01,134 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 3.0) internal successors, (45), 16 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:01,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 31 transitions. [2022-02-20 23:41:01,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 15 states have (on average 3.0) internal successors, (45), 16 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:01,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 31 transitions. [2022-02-20 23:41:01,135 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 31 transitions. [2022-02-20 23:41:01,158 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:01,159 INFO L225 Difference]: With dead ends: 29 [2022-02-20 23:41:01,159 INFO L226 Difference]: Without dead ends: 29 [2022-02-20 23:41:01,159 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 25 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 52 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=103, Invalid=317, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:41:01,159 INFO L933 BasicCegarLoop]: 8 mSDtfsCounter, 64 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 88 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 104 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 88 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:01,159 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [64 Valid, 41 Invalid, 104 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 88 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:41:01,160 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-02-20 23:41:01,160 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 24. [2022-02-20 23:41:01,160 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:01,160 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 24 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 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:01,160 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 24 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 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:01,160 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 24 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 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:01,161 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:01,161 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2022-02-20 23:41:01,161 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2022-02-20 23:41:01,161 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:01,161 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:01,161 INFO L74 IsIncluded]: Start isIncluded. First operand has 24 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 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 29 states. [2022-02-20 23:41:01,161 INFO L87 Difference]: Start difference. First operand has 24 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 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 29 states. [2022-02-20 23:41:01,162 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:01,162 INFO L93 Difference]: Finished difference Result 29 states and 30 transitions. [2022-02-20 23:41:01,162 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 30 transitions. [2022-02-20 23:41:01,162 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:01,163 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:01,163 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:01,163 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:01,163 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 22 states have (on average 1.1363636363636365) internal successors, (25), 23 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:01,163 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 25 transitions. [2022-02-20 23:41:01,163 INFO L78 Accepts]: Start accepts. Automaton has 24 states and 25 transitions. Word has length 18 [2022-02-20 23:41:01,163 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:01,163 INFO L470 AbstractCegarLoop]: Abstraction has 24 states and 25 transitions. [2022-02-20 23:41:01,163 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 15 states have (on average 3.0) internal successors, (45), 16 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:01,163 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 25 transitions. [2022-02-20 23:41:01,163 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 23:41:01,163 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:01,164 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:01,180 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-02-20 23:41:01,375 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-02-20 23:41:01,375 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:01,376 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:01,376 INFO L85 PathProgramCache]: Analyzing trace with hash 775185845, now seen corresponding path program 2 times [2022-02-20 23:41:01,376 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:01,376 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [9842291] [2022-02-20 23:41:01,376 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:01,376 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:01,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:01,590 INFO L290 TraceCheckUtils]: 0: Hoare triple {2898#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2898#true} is VALID [2022-02-20 23:41:01,590 INFO L290 TraceCheckUtils]: 1: Hoare triple {2898#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2898#true} is VALID [2022-02-20 23:41:01,590 INFO L290 TraceCheckUtils]: 2: Hoare triple {2898#true} assume !(main_~length1~0#1 < 1); {2898#true} is VALID [2022-02-20 23:41:01,590 INFO L290 TraceCheckUtils]: 3: Hoare triple {2898#true} assume !(main_~length2~0#1 < 1); {2898#true} is VALID [2022-02-20 23:41:01,591 INFO L290 TraceCheckUtils]: 4: Hoare triple {2898#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))))} is VALID [2022-02-20 23:41:01,592 INFO L290 TraceCheckUtils]: 5: Hoare triple {2900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {2901#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:01,592 INFO L290 TraceCheckUtils]: 6: Hoare triple {2901#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {2901#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:01,593 INFO L290 TraceCheckUtils]: 7: Hoare triple {2901#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {2901#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:01,593 INFO L290 TraceCheckUtils]: 8: Hoare triple {2901#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {2902#(and (or (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0) (and (<= 2 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))))} is VALID [2022-02-20 23:41:01,594 INFO L290 TraceCheckUtils]: 9: Hoare triple {2902#(and (or (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0) (and (<= 2 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2903#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))} is VALID [2022-02-20 23:41:01,595 INFO L290 TraceCheckUtils]: 10: Hoare triple {2903#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_main_~nondetString~0#1.offset|) 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2904#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) 1) 0))} is VALID [2022-02-20 23:41:01,595 INFO L290 TraceCheckUtils]: 11: Hoare triple {2904#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) 1) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2905#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 1) 0))} is VALID [2022-02-20 23:41:01,596 INFO L290 TraceCheckUtils]: 12: Hoare triple {2905#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 1) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2905#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 1) 0))} is VALID [2022-02-20 23:41:01,596 INFO L290 TraceCheckUtils]: 13: Hoare triple {2905#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 1) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2906#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 1) 0))} is VALID [2022-02-20 23:41:01,596 INFO L290 TraceCheckUtils]: 14: Hoare triple {2906#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 1) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2906#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 1) 0))} is VALID [2022-02-20 23:41:01,597 INFO L290 TraceCheckUtils]: 15: Hoare triple {2906#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 1) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2907#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:01,597 INFO L290 TraceCheckUtils]: 16: Hoare triple {2907#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2908#(and (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:01,598 INFO L290 TraceCheckUtils]: 17: Hoare triple {2908#(and (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2908#(and (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:01,598 INFO L290 TraceCheckUtils]: 18: Hoare triple {2908#(and (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2899#false} is VALID [2022-02-20 23:41:01,598 INFO L290 TraceCheckUtils]: 19: Hoare triple {2899#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2899#false} is VALID [2022-02-20 23:41:01,598 INFO L290 TraceCheckUtils]: 20: Hoare triple {2899#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {2899#false} is VALID [2022-02-20 23:41:01,599 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 3 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:01,599 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:01,599 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [9842291] [2022-02-20 23:41:01,599 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [9842291] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:01,599 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [283739925] [2022-02-20 23:41:01,599 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:41:01,599 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:01,599 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:01,601 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:01,645 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:01,677 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:41:01,677 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:01,678 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 41 conjunts are in the unsatisfiable core [2022-02-20 23:41:01,690 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:01,691 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:01,726 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 10 treesize of output 8 [2022-02-20 23:41:01,818 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:02,430 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 19 [2022-02-20 23:41:03,185 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:03,186 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:03,500 INFO L290 TraceCheckUtils]: 0: Hoare triple {2898#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2898#true} is VALID [2022-02-20 23:41:03,501 INFO L290 TraceCheckUtils]: 1: Hoare triple {2898#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2898#true} is VALID [2022-02-20 23:41:03,501 INFO L290 TraceCheckUtils]: 2: Hoare triple {2898#true} assume !(main_~length1~0#1 < 1); {2898#true} is VALID [2022-02-20 23:41:03,501 INFO L290 TraceCheckUtils]: 3: Hoare triple {2898#true} assume !(main_~length2~0#1 < 1); {2898#true} is VALID [2022-02-20 23:41:03,502 INFO L290 TraceCheckUtils]: 4: Hoare triple {2898#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {2924#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:03,503 INFO L290 TraceCheckUtils]: 5: Hoare triple {2924#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:03,503 INFO L290 TraceCheckUtils]: 6: Hoare triple {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:03,504 INFO L290 TraceCheckUtils]: 7: Hoare triple {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:03,504 INFO L290 TraceCheckUtils]: 8: Hoare triple {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:03,505 INFO L290 TraceCheckUtils]: 9: Hoare triple {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:03,506 INFO L290 TraceCheckUtils]: 10: Hoare triple {2928#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {2944#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:03,509 INFO L290 TraceCheckUtils]: 11: Hoare triple {2944#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 1 |ULTIMATE.start_main_~length2~0#1|))))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {2948#(and (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~nondetString~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:03,510 INFO L290 TraceCheckUtils]: 12: Hoare triple {2948#(and (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~nondetString~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2952#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~nondetString~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:03,512 INFO L290 TraceCheckUtils]: 13: Hoare triple {2952#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~nondetString~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2956#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~nondetString~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))))} is VALID [2022-02-20 23:41:03,513 INFO L290 TraceCheckUtils]: 14: Hoare triple {2956#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~nondetString~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2956#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~nondetString~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))))} is VALID [2022-02-20 23:41:03,514 INFO L290 TraceCheckUtils]: 15: Hoare triple {2956#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~nondetString~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2963#(and (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 1)))) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:03,515 INFO L290 TraceCheckUtils]: 16: Hoare triple {2963#(and (exists ((|ULTIMATE.start_main_~nondetString~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 1)))) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2967#(and (or (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (and (< |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0))) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:03,516 INFO L290 TraceCheckUtils]: 17: Hoare triple {2967#(and (or (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (and (< |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0))) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2967#(and (or (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (and (< |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0))) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:03,516 INFO L290 TraceCheckUtils]: 18: Hoare triple {2967#(and (or (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (and (< |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0))) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2974#(and (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:03,517 INFO L290 TraceCheckUtils]: 19: Hoare triple {2974#(and (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2978#(and (< |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:03,517 INFO L290 TraceCheckUtils]: 20: Hoare triple {2978#(and (< |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {2899#false} is VALID [2022-02-20 23:41:03,517 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:03,517 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:03,919 WARN L838 $PredicateComparison]: unable to prove that (forall ((|v_ULTIMATE.start_cstrcpy_~from#1.offset_16| Int) (v_ArrVal_188 (Array Int Int))) (or (< |c_ULTIMATE.start_main_~nondetString~0#1.offset| |v_ULTIMATE.start_cstrcpy_~from#1.offset_16|) (not (<= 0 |v_ULTIMATE.start_cstrcpy_~from#1.offset_16|)) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_188) |c_ULTIMATE.start_main_~nondetString~0#1.base|) (+ |v_ULTIMATE.start_cstrcpy_~from#1.offset_16| 1)) 0) (<= (+ |v_ULTIMATE.start_cstrcpy_~from#1.offset_16| 3) (select |c_#length| |c_ULTIMATE.start_main_~nondetString~0#1.base|)))) is different from false [2022-02-20 23:41:04,069 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:04,069 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:41:04,118 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:04,119 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 37 treesize of output 37 [2022-02-20 23:41:04,180 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 11 treesize of output 7 [2022-02-20 23:41:04,220 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:04,550 INFO L290 TraceCheckUtils]: 20: Hoare triple {2982#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {2899#false} is VALID [2022-02-20 23:41:04,551 INFO L290 TraceCheckUtils]: 19: Hoare triple {2986#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2982#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:04,551 INFO L290 TraceCheckUtils]: 18: Hoare triple {2990#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {2986#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:04,552 INFO L290 TraceCheckUtils]: 17: Hoare triple {2990#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {2990#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:04,552 INFO L290 TraceCheckUtils]: 16: Hoare triple {2997#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {2990#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:04,553 INFO L290 TraceCheckUtils]: 15: Hoare triple {3001#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {2997#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:04,554 INFO L290 TraceCheckUtils]: 14: Hoare triple {3001#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3001#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:04,554 INFO L290 TraceCheckUtils]: 13: Hoare triple {3008#(or (forall ((v_ArrVal_188 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_188) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3001#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:04,555 INFO L290 TraceCheckUtils]: 12: Hoare triple {3012#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (forall ((v_ArrVal_188 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_188) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3008#(or (forall ((v_ArrVal_188 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_188) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:04,556 INFO L290 TraceCheckUtils]: 11: Hoare triple {3016#(forall ((|v_ULTIMATE.start_cstrcpy_~from#1.offset_16| Int) (v_ArrVal_188 (Array Int Int))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| |v_ULTIMATE.start_cstrcpy_~from#1.offset_16|) (not (<= 0 |v_ULTIMATE.start_cstrcpy_~from#1.offset_16|)) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_188) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |v_ULTIMATE.start_cstrcpy_~from#1.offset_16| 1)) 0) (<= (+ |v_ULTIMATE.start_cstrcpy_~from#1.offset_16| 3) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {3012#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (forall ((v_ArrVal_188 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_188) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)))} is VALID [2022-02-20 23:41:04,557 INFO L290 TraceCheckUtils]: 10: Hoare triple {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3016#(forall ((|v_ULTIMATE.start_cstrcpy_~from#1.offset_16| Int) (v_ArrVal_188 (Array Int Int))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| |v_ULTIMATE.start_cstrcpy_~from#1.offset_16|) (not (<= 0 |v_ULTIMATE.start_cstrcpy_~from#1.offset_16|)) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_188) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |v_ULTIMATE.start_cstrcpy_~from#1.offset_16| 1)) 0) (<= (+ |v_ULTIMATE.start_cstrcpy_~from#1.offset_16| 3) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:04,557 INFO L290 TraceCheckUtils]: 9: Hoare triple {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:04,557 INFO L290 TraceCheckUtils]: 8: Hoare triple {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:04,558 INFO L290 TraceCheckUtils]: 7: Hoare triple {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:04,559 INFO L290 TraceCheckUtils]: 6: Hoare triple {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:04,559 INFO L290 TraceCheckUtils]: 5: Hoare triple {3036#(and (or (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3020#(and (or (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length2~0#1|)) (<= 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:04,560 INFO L290 TraceCheckUtils]: 4: Hoare triple {2898#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3036#(and (or (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:04,562 INFO L290 TraceCheckUtils]: 3: Hoare triple {2898#true} assume !(main_~length2~0#1 < 1); {2898#true} is VALID [2022-02-20 23:41:04,563 INFO L290 TraceCheckUtils]: 2: Hoare triple {2898#true} assume !(main_~length1~0#1 < 1); {2898#true} is VALID [2022-02-20 23:41:04,563 INFO L290 TraceCheckUtils]: 1: Hoare triple {2898#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {2898#true} is VALID [2022-02-20 23:41:04,563 INFO L290 TraceCheckUtils]: 0: Hoare triple {2898#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2898#true} is VALID [2022-02-20 23:41:04,563 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:04,563 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [283739925] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:04,563 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:04,563 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 11] total 31 [2022-02-20 23:41:04,564 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1175853881] [2022-02-20 23:41:04,564 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:04,564 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 1.7741935483870968) internal successors, (55), 31 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) Word has length 21 [2022-02-20 23:41:04,564 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:04,564 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 31 states, 31 states have (on average 1.7741935483870968) internal successors, (55), 31 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:41:04,613 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:04,613 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-02-20 23:41:04,613 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:04,613 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-02-20 23:41:04,613 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=104, Invalid=769, Unknown=1, NotChecked=56, Total=930 [2022-02-20 23:41:04,614 INFO L87 Difference]: Start difference. First operand 24 states and 25 transitions. Second operand has 31 states, 31 states have (on average 1.7741935483870968) internal successors, (55), 31 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:41:05,231 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:05,231 INFO L93 Difference]: Finished difference Result 47 states and 48 transitions. [2022-02-20 23:41:05,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-20 23:41:05,231 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 1.7741935483870968) internal successors, (55), 31 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) Word has length 21 [2022-02-20 23:41:05,231 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:05,231 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 1.7741935483870968) internal successors, (55), 31 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:41:05,232 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 50 transitions. [2022-02-20 23:41:05,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 1.7741935483870968) internal successors, (55), 31 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:41:05,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 50 transitions. [2022-02-20 23:41:05,233 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 50 transitions. [2022-02-20 23:41:05,285 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:05,287 INFO L225 Difference]: With dead ends: 47 [2022-02-20 23:41:05,287 INFO L226 Difference]: Without dead ends: 38 [2022-02-20 23:41:05,288 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 25 SyntacticMatches, 1 SemanticMatches, 40 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 288 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=203, Invalid=1440, Unknown=1, NotChecked=78, Total=1722 [2022-02-20 23:41:05,288 INFO L933 BasicCegarLoop]: 9 mSDtfsCounter, 55 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 138 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 232 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 138 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 84 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:05,288 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 108 Invalid, 232 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 138 Invalid, 0 Unknown, 84 Unchecked, 0.1s Time] [2022-02-20 23:41:05,289 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-02-20 23:41:05,295 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 31. [2022-02-20 23:41:05,295 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:05,295 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 31 states, 29 states have (on average 1.103448275862069) internal successors, (32), 30 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:05,295 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 31 states, 29 states have (on average 1.103448275862069) internal successors, (32), 30 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:05,295 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 31 states, 29 states have (on average 1.103448275862069) internal successors, (32), 30 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:05,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:05,303 INFO L93 Difference]: Finished difference Result 38 states and 39 transitions. [2022-02-20 23:41:05,304 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 39 transitions. [2022-02-20 23:41:05,304 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:05,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:05,304 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 29 states have (on average 1.103448275862069) internal successors, (32), 30 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) Second operand 38 states. [2022-02-20 23:41:05,304 INFO L87 Difference]: Start difference. First operand has 31 states, 29 states have (on average 1.103448275862069) internal successors, (32), 30 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) Second operand 38 states. [2022-02-20 23:41:05,305 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:05,305 INFO L93 Difference]: Finished difference Result 38 states and 39 transitions. [2022-02-20 23:41:05,305 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 39 transitions. [2022-02-20 23:41:05,305 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:05,305 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:05,305 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:05,305 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:05,306 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 29 states have (on average 1.103448275862069) internal successors, (32), 30 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:05,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 32 transitions. [2022-02-20 23:41:05,307 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 32 transitions. Word has length 21 [2022-02-20 23:41:05,307 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:05,307 INFO L470 AbstractCegarLoop]: Abstraction has 31 states and 32 transitions. [2022-02-20 23:41:05,307 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 31 states have (on average 1.7741935483870968) internal successors, (55), 31 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:41:05,307 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 32 transitions. [2022-02-20 23:41:05,308 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:41:05,308 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:05,308 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:05,335 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:05,527 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:05,527 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:05,528 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:05,528 INFO L85 PathProgramCache]: Analyzing trace with hash -1518290629, now seen corresponding path program 2 times [2022-02-20 23:41:05,528 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:05,528 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [606163146] [2022-02-20 23:41:05,528 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:05,528 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:05,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:05,645 INFO L290 TraceCheckUtils]: 0: Hoare triple {3230#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3230#true} is VALID [2022-02-20 23:41:05,645 INFO L290 TraceCheckUtils]: 1: Hoare triple {3230#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3230#true} is VALID [2022-02-20 23:41:05,645 INFO L290 TraceCheckUtils]: 2: Hoare triple {3230#true} assume !(main_~length1~0#1 < 1); {3230#true} is VALID [2022-02-20 23:41:05,645 INFO L290 TraceCheckUtils]: 3: Hoare triple {3230#true} assume !(main_~length2~0#1 < 1); {3230#true} is VALID [2022-02-20 23:41:05,646 INFO L290 TraceCheckUtils]: 4: Hoare triple {3230#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3232#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:05,647 INFO L290 TraceCheckUtils]: 5: Hoare triple {3232#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3232#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:05,647 INFO L290 TraceCheckUtils]: 6: Hoare triple {3232#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3232#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:05,648 INFO L290 TraceCheckUtils]: 7: Hoare triple {3232#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {3232#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:05,648 INFO L290 TraceCheckUtils]: 8: Hoare triple {3232#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3233#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:05,649 INFO L290 TraceCheckUtils]: 9: Hoare triple {3233#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:05,649 INFO L290 TraceCheckUtils]: 10: Hoare triple {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:05,650 INFO L290 TraceCheckUtils]: 11: Hoare triple {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:05,650 INFO L290 TraceCheckUtils]: 12: Hoare triple {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:05,650 INFO L290 TraceCheckUtils]: 13: Hoare triple {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:05,651 INFO L290 TraceCheckUtils]: 14: Hoare triple {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:05,651 INFO L290 TraceCheckUtils]: 15: Hoare triple {3234#(and (<= 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:05,652 INFO L290 TraceCheckUtils]: 16: Hoare triple {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:05,652 INFO L290 TraceCheckUtils]: 17: Hoare triple {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:05,653 INFO L290 TraceCheckUtils]: 18: Hoare triple {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:05,653 INFO L290 TraceCheckUtils]: 19: Hoare triple {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3236#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:05,654 INFO L290 TraceCheckUtils]: 20: Hoare triple {3236#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3236#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:05,654 INFO L290 TraceCheckUtils]: 21: Hoare triple {3236#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3236#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:05,654 INFO L290 TraceCheckUtils]: 22: Hoare triple {3236#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3236#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:05,655 INFO L290 TraceCheckUtils]: 23: Hoare triple {3236#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3237#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:05,656 INFO L290 TraceCheckUtils]: 24: Hoare triple {3237#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3237#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:05,656 INFO L290 TraceCheckUtils]: 25: Hoare triple {3237#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {3231#false} is VALID [2022-02-20 23:41:05,656 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:05,656 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:05,657 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [606163146] [2022-02-20 23:41:05,657 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [606163146] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:05,657 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [907141091] [2022-02-20 23:41:05,657 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:41:05,657 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:05,657 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:05,658 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:05,659 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:05,719 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:41:05,719 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:05,723 INFO L263 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 30 conjunts are in the unsatisfiable core [2022-02-20 23:41:05,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:05,735 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:05,834 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:41:05,834 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 11 [2022-02-20 23:41:05,849 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 10 treesize of output 8 [2022-02-20 23:41:06,131 INFO L290 TraceCheckUtils]: 0: Hoare triple {3230#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3230#true} is VALID [2022-02-20 23:41:06,132 INFO L290 TraceCheckUtils]: 1: Hoare triple {3230#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3230#true} is VALID [2022-02-20 23:41:06,132 INFO L290 TraceCheckUtils]: 2: Hoare triple {3230#true} assume !(main_~length1~0#1 < 1); {3230#true} is VALID [2022-02-20 23:41:06,132 INFO L290 TraceCheckUtils]: 3: Hoare triple {3230#true} assume !(main_~length2~0#1 < 1); {3230#true} is VALID [2022-02-20 23:41:06,134 INFO L290 TraceCheckUtils]: 4: Hoare triple {3230#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3253#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,135 INFO L290 TraceCheckUtils]: 5: Hoare triple {3253#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3253#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,139 INFO L290 TraceCheckUtils]: 6: Hoare triple {3253#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3253#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,140 INFO L290 TraceCheckUtils]: 7: Hoare triple {3253#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {3253#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,141 INFO L290 TraceCheckUtils]: 8: Hoare triple {3253#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3266#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,142 INFO L290 TraceCheckUtils]: 9: Hoare triple {3266#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,143 INFO L290 TraceCheckUtils]: 10: Hoare triple {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,143 INFO L290 TraceCheckUtils]: 11: Hoare triple {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,144 INFO L290 TraceCheckUtils]: 12: Hoare triple {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,144 INFO L290 TraceCheckUtils]: 13: Hoare triple {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,144 INFO L290 TraceCheckUtils]: 14: Hoare triple {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:06,145 INFO L290 TraceCheckUtils]: 15: Hoare triple {3270#(and (< 2 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {3289#(and (< 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} is VALID [2022-02-20 23:41:06,145 INFO L290 TraceCheckUtils]: 16: Hoare triple {3289#(and (< 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3289#(and (< 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} is VALID [2022-02-20 23:41:06,146 INFO L290 TraceCheckUtils]: 17: Hoare triple {3289#(and (< 2 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:06,146 INFO L290 TraceCheckUtils]: 18: Hoare triple {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:06,146 INFO L290 TraceCheckUtils]: 19: Hoare triple {3235#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3302#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} is VALID [2022-02-20 23:41:06,147 INFO L290 TraceCheckUtils]: 20: Hoare triple {3302#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3302#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} is VALID [2022-02-20 23:41:06,147 INFO L290 TraceCheckUtils]: 21: Hoare triple {3302#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3302#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} is VALID [2022-02-20 23:41:06,148 INFO L290 TraceCheckUtils]: 22: Hoare triple {3302#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3302#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} is VALID [2022-02-20 23:41:06,148 INFO L290 TraceCheckUtils]: 23: Hoare triple {3302#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3315#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} is VALID [2022-02-20 23:41:06,148 INFO L290 TraceCheckUtils]: 24: Hoare triple {3315#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3315#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} is VALID [2022-02-20 23:41:06,149 INFO L290 TraceCheckUtils]: 25: Hoare triple {3315#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {3231#false} is VALID [2022-02-20 23:41:06,149 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 1 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:06,149 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:06,699 INFO L290 TraceCheckUtils]: 25: Hoare triple {3322#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {3231#false} is VALID [2022-02-20 23:41:06,700 INFO L290 TraceCheckUtils]: 24: Hoare triple {3322#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3322#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:06,700 INFO L290 TraceCheckUtils]: 23: Hoare triple {3329#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3322#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:06,712 INFO L290 TraceCheckUtils]: 22: Hoare triple {3329#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3329#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:06,713 INFO L290 TraceCheckUtils]: 21: Hoare triple {3329#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3329#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:06,713 INFO L290 TraceCheckUtils]: 20: Hoare triple {3329#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3329#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:06,714 INFO L290 TraceCheckUtils]: 19: Hoare triple {3342#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3329#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:06,715 INFO L290 TraceCheckUtils]: 18: Hoare triple {3342#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3342#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:06,715 INFO L290 TraceCheckUtils]: 17: Hoare triple {3349#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3342#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:06,716 INFO L290 TraceCheckUtils]: 16: Hoare triple {3349#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3349#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:06,716 INFO L290 TraceCheckUtils]: 15: Hoare triple {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {3349#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:06,717 INFO L290 TraceCheckUtils]: 14: Hoare triple {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,717 INFO L290 TraceCheckUtils]: 13: Hoare triple {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,718 INFO L290 TraceCheckUtils]: 12: Hoare triple {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,718 INFO L290 TraceCheckUtils]: 11: Hoare triple {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,719 INFO L290 TraceCheckUtils]: 10: Hoare triple {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,719 INFO L290 TraceCheckUtils]: 9: Hoare triple {3375#(or (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3356#(or (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,720 INFO L290 TraceCheckUtils]: 8: Hoare triple {3379#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3375#(or (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,721 INFO L290 TraceCheckUtils]: 7: Hoare triple {3379#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {3379#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,722 INFO L290 TraceCheckUtils]: 6: Hoare triple {3379#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3379#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,722 INFO L290 TraceCheckUtils]: 5: Hoare triple {3379#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3379#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,723 INFO L290 TraceCheckUtils]: 4: Hoare triple {3230#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3379#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:06,724 INFO L290 TraceCheckUtils]: 3: Hoare triple {3230#true} assume !(main_~length2~0#1 < 1); {3230#true} is VALID [2022-02-20 23:41:06,724 INFO L290 TraceCheckUtils]: 2: Hoare triple {3230#true} assume !(main_~length1~0#1 < 1); {3230#true} is VALID [2022-02-20 23:41:06,724 INFO L290 TraceCheckUtils]: 1: Hoare triple {3230#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3230#true} is VALID [2022-02-20 23:41:06,724 INFO L290 TraceCheckUtils]: 0: Hoare triple {3230#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3230#true} is VALID [2022-02-20 23:41:06,725 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:06,725 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [907141091] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:06,725 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:06,725 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8, 8] total 20 [2022-02-20 23:41:06,725 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [995383581] [2022-02-20 23:41:06,726 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:06,726 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 20 states have (on average 3.45) internal successors, (69), 21 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) Word has length 26 [2022-02-20 23:41:06,726 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:06,727 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 21 states, 20 states have (on average 3.45) internal successors, (69), 21 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:41:06,786 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:41:06,786 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-02-20 23:41:06,786 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:06,787 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-02-20 23:41:06,787 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=72, Invalid=348, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:41:06,787 INFO L87 Difference]: Start difference. First operand 31 states and 32 transitions. Second operand has 21 states, 20 states have (on average 3.45) internal successors, (69), 21 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:41:07,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:07,289 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-02-20 23:41:07,289 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:41:07,289 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 20 states have (on average 3.45) internal successors, (69), 21 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) Word has length 26 [2022-02-20 23:41:07,289 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:07,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 3.45) internal successors, (69), 21 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:41:07,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 36 transitions. [2022-02-20 23:41:07,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 3.45) internal successors, (69), 21 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:41:07,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 36 transitions. [2022-02-20 23:41:07,290 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 36 transitions. [2022-02-20 23:41:07,318 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:07,319 INFO L225 Difference]: With dead ends: 34 [2022-02-20 23:41:07,319 INFO L226 Difference]: Without dead ends: 34 [2022-02-20 23:41:07,319 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 37 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=155, Invalid=547, Unknown=0, NotChecked=0, Total=702 [2022-02-20 23:41:07,320 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 82 mSDsluCounter, 58 mSDsCounter, 0 mSdLazyCounter, 156 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 68 SdHoareTripleChecker+Invalid, 180 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 156 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:07,320 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [82 Valid, 68 Invalid, 180 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 156 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:41:07,322 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-02-20 23:41:07,322 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 32. [2022-02-20 23:41:07,322 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:07,323 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 32 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:07,323 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 32 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:07,323 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 32 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:07,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:07,323 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-02-20 23:41:07,324 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-02-20 23:41:07,324 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:07,324 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:07,324 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 34 states. [2022-02-20 23:41:07,324 INFO L87 Difference]: Start difference. First operand has 32 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 34 states. [2022-02-20 23:41:07,324 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:07,325 INFO L93 Difference]: Finished difference Result 34 states and 35 transitions. [2022-02-20 23:41:07,325 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 35 transitions. [2022-02-20 23:41:07,325 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:07,325 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:07,325 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:07,325 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:07,325 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 30 states have (on average 1.1) internal successors, (33), 31 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:41:07,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 33 transitions. [2022-02-20 23:41:07,326 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 33 transitions. Word has length 26 [2022-02-20 23:41:07,326 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:07,326 INFO L470 AbstractCegarLoop]: Abstraction has 32 states and 33 transitions. [2022-02-20 23:41:07,326 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 20 states have (on average 3.45) internal successors, (69), 21 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:41:07,326 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 33 transitions. [2022-02-20 23:41:07,326 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:41:07,327 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:07,327 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:07,348 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:07,543 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:07,543 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:07,544 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:07,544 INFO L85 PathProgramCache]: Analyzing trace with hash -1095540269, now seen corresponding path program 3 times [2022-02-20 23:41:07,544 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:07,544 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1827574889] [2022-02-20 23:41:07,544 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:07,544 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:07,569 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:07,719 INFO L290 TraceCheckUtils]: 0: Hoare triple {3549#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3549#true} is VALID [2022-02-20 23:41:07,719 INFO L290 TraceCheckUtils]: 1: Hoare triple {3549#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3549#true} is VALID [2022-02-20 23:41:07,719 INFO L290 TraceCheckUtils]: 2: Hoare triple {3549#true} assume !(main_~length1~0#1 < 1); {3549#true} is VALID [2022-02-20 23:41:07,719 INFO L290 TraceCheckUtils]: 3: Hoare triple {3549#true} assume !(main_~length2~0#1 < 1); {3549#true} is VALID [2022-02-20 23:41:07,720 INFO L290 TraceCheckUtils]: 4: Hoare triple {3549#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3551#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:07,720 INFO L290 TraceCheckUtils]: 5: Hoare triple {3551#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3551#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:07,721 INFO L290 TraceCheckUtils]: 6: Hoare triple {3551#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3551#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:07,721 INFO L290 TraceCheckUtils]: 7: Hoare triple {3551#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {3551#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:07,722 INFO L290 TraceCheckUtils]: 8: Hoare triple {3551#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3552#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:07,722 INFO L290 TraceCheckUtils]: 9: Hoare triple {3552#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3553#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:07,723 INFO L290 TraceCheckUtils]: 10: Hoare triple {3553#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3553#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:07,723 INFO L290 TraceCheckUtils]: 11: Hoare triple {3553#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet10#1; {3553#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:07,724 INFO L290 TraceCheckUtils]: 12: Hoare triple {3553#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3554#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:07,724 INFO L290 TraceCheckUtils]: 13: Hoare triple {3554#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3555#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (<= 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:07,725 INFO L290 TraceCheckUtils]: 14: Hoare triple {3555#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (<= 3 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3556#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} is VALID [2022-02-20 23:41:07,725 INFO L290 TraceCheckUtils]: 15: Hoare triple {3556#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {3557#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 2) 0))} is VALID [2022-02-20 23:41:07,726 INFO L290 TraceCheckUtils]: 16: Hoare triple {3557#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 2) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3557#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 2) 0))} is VALID [2022-02-20 23:41:07,727 INFO L290 TraceCheckUtils]: 17: Hoare triple {3557#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 2) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3557#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 2) 0))} is VALID [2022-02-20 23:41:07,727 INFO L290 TraceCheckUtils]: 18: Hoare triple {3557#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 2) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3557#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 2) 0))} is VALID [2022-02-20 23:41:07,727 INFO L290 TraceCheckUtils]: 19: Hoare triple {3557#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 2) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3558#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:07,728 INFO L290 TraceCheckUtils]: 20: Hoare triple {3558#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3558#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:07,728 INFO L290 TraceCheckUtils]: 21: Hoare triple {3558#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3558#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:07,729 INFO L290 TraceCheckUtils]: 22: Hoare triple {3558#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3558#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:07,729 INFO L290 TraceCheckUtils]: 23: Hoare triple {3558#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3559#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:07,730 INFO L290 TraceCheckUtils]: 24: Hoare triple {3559#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:07,730 INFO L290 TraceCheckUtils]: 25: Hoare triple {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:07,730 INFO L290 TraceCheckUtils]: 26: Hoare triple {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3550#false} is VALID [2022-02-20 23:41:07,731 INFO L290 TraceCheckUtils]: 27: Hoare triple {3550#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3550#false} is VALID [2022-02-20 23:41:07,731 INFO L290 TraceCheckUtils]: 28: Hoare triple {3550#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {3550#false} is VALID [2022-02-20 23:41:07,731 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 5 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:07,731 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:07,731 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1827574889] [2022-02-20 23:41:07,731 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1827574889] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:07,731 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [612485883] [2022-02-20 23:41:07,731 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:41:07,731 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:07,731 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:07,732 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:07,751 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:07,806 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-02-20 23:41:07,807 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:07,808 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 64 conjunts are in the unsatisfiable core [2022-02-20 23:41:07,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:07,817 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:07,842 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 10 treesize of output 8 [2022-02-20 23:41:08,100 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:08,349 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:08,658 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:08,958 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:41:08,959 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:08,959 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 17 treesize of output 10 [2022-02-20 23:41:08,976 INFO L290 TraceCheckUtils]: 0: Hoare triple {3549#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3549#true} is VALID [2022-02-20 23:41:08,976 INFO L290 TraceCheckUtils]: 1: Hoare triple {3549#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3549#true} is VALID [2022-02-20 23:41:08,978 INFO L290 TraceCheckUtils]: 2: Hoare triple {3549#true} assume !(main_~length1~0#1 < 1); {3549#true} is VALID [2022-02-20 23:41:08,978 INFO L290 TraceCheckUtils]: 3: Hoare triple {3549#true} assume !(main_~length2~0#1 < 1); {3549#true} is VALID [2022-02-20 23:41:08,980 INFO L290 TraceCheckUtils]: 4: Hoare triple {3549#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3576#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:08,980 INFO L290 TraceCheckUtils]: 5: Hoare triple {3576#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3576#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:08,981 INFO L290 TraceCheckUtils]: 6: Hoare triple {3576#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3576#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:08,981 INFO L290 TraceCheckUtils]: 7: Hoare triple {3576#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {3576#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:08,982 INFO L290 TraceCheckUtils]: 8: Hoare triple {3576#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3589#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:08,982 INFO L290 TraceCheckUtils]: 9: Hoare triple {3589#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3593#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:08,983 INFO L290 TraceCheckUtils]: 10: Hoare triple {3593#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3593#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:08,983 INFO L290 TraceCheckUtils]: 11: Hoare triple {3593#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {3593#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:08,983 INFO L290 TraceCheckUtils]: 12: Hoare triple {3593#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3603#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (< 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:08,984 INFO L290 TraceCheckUtils]: 13: Hoare triple {3603#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (< 2 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3607#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:08,985 INFO L290 TraceCheckUtils]: 14: Hoare triple {3607#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3611#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,986 INFO L290 TraceCheckUtils]: 15: Hoare triple {3611#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {3615#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,986 INFO L290 TraceCheckUtils]: 16: Hoare triple {3615#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3615#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,988 INFO L290 TraceCheckUtils]: 17: Hoare triple {3615#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3615#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,988 INFO L290 TraceCheckUtils]: 18: Hoare triple {3615#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3615#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,990 INFO L290 TraceCheckUtils]: 19: Hoare triple {3615#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3628#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,992 INFO L290 TraceCheckUtils]: 20: Hoare triple {3628#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3628#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,993 INFO L290 TraceCheckUtils]: 21: Hoare triple {3628#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3635#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,994 INFO L290 TraceCheckUtils]: 22: Hoare triple {3635#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3635#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,995 INFO L290 TraceCheckUtils]: 23: Hoare triple {3635#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3642#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:08,995 INFO L290 TraceCheckUtils]: 24: Hoare triple {3642#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:08,996 INFO L290 TraceCheckUtils]: 25: Hoare triple {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:08,996 INFO L290 TraceCheckUtils]: 26: Hoare triple {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3550#false} is VALID [2022-02-20 23:41:08,996 INFO L290 TraceCheckUtils]: 27: Hoare triple {3550#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3550#false} is VALID [2022-02-20 23:41:08,996 INFO L290 TraceCheckUtils]: 28: Hoare triple {3550#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {3550#false} is VALID [2022-02-20 23:41:08,996 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 5 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:08,997 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:09,031 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) is different from false [2022-02-20 23:41:09,041 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) is different from false [2022-02-20 23:41:09,061 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_261) |c_ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |c_ULTIMATE.start_main_~nondetString~0#1.offset|)) 0)) is different from false [2022-02-20 23:41:09,070 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:09,071 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:41:09,079 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:09,080 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 37 treesize of output 37 [2022-02-20 23:41:09,084 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 11 treesize of output 7 [2022-02-20 23:41:09,339 INFO L290 TraceCheckUtils]: 28: Hoare triple {3550#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {3550#false} is VALID [2022-02-20 23:41:09,339 INFO L290 TraceCheckUtils]: 27: Hoare triple {3550#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3550#false} is VALID [2022-02-20 23:41:09,340 INFO L290 TraceCheckUtils]: 26: Hoare triple {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3550#false} is VALID [2022-02-20 23:41:09,340 INFO L290 TraceCheckUtils]: 25: Hoare triple {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:09,340 INFO L290 TraceCheckUtils]: 24: Hoare triple {3559#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3560#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:09,348 INFO L290 TraceCheckUtils]: 23: Hoare triple {3673#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3559#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:09,348 INFO L290 TraceCheckUtils]: 22: Hoare triple {3673#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3673#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:09,349 INFO L290 TraceCheckUtils]: 21: Hoare triple {3680#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3673#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:09,349 INFO L290 TraceCheckUtils]: 20: Hoare triple {3680#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3680#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:09,350 INFO L290 TraceCheckUtils]: 19: Hoare triple {3687#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3680#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:09,350 INFO L290 TraceCheckUtils]: 18: Hoare triple {3687#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3687#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:09,351 INFO L290 TraceCheckUtils]: 17: Hoare triple {3687#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3687#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:09,351 INFO L290 TraceCheckUtils]: 16: Hoare triple {3687#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3687#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:09,352 INFO L290 TraceCheckUtils]: 15: Hoare triple {3700#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_261) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {3687#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_261) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:09,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {3704#(and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3700#(forall ((v_ArrVal_261 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_261) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} is VALID [2022-02-20 23:41:09,353 INFO L290 TraceCheckUtils]: 13: Hoare triple {3708#(or (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3704#(and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:09,354 INFO L290 TraceCheckUtils]: 12: Hoare triple {3712#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3708#(or (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:09,354 INFO L290 TraceCheckUtils]: 11: Hoare triple {3712#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))))} havoc main_#t~nondet10#1; {3712#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:09,354 INFO L290 TraceCheckUtils]: 10: Hoare triple {3712#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3712#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:09,355 INFO L290 TraceCheckUtils]: 9: Hoare triple {3722#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3712#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:09,355 INFO L290 TraceCheckUtils]: 8: Hoare triple {3726#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3722#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:09,356 INFO L290 TraceCheckUtils]: 7: Hoare triple {3726#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {3726#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:09,356 INFO L290 TraceCheckUtils]: 6: Hoare triple {3726#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3726#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:09,357 INFO L290 TraceCheckUtils]: 5: Hoare triple {3726#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3726#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:09,357 INFO L290 TraceCheckUtils]: 4: Hoare triple {3549#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3726#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:09,357 INFO L290 TraceCheckUtils]: 3: Hoare triple {3549#true} assume !(main_~length2~0#1 < 1); {3549#true} is VALID [2022-02-20 23:41:09,358 INFO L290 TraceCheckUtils]: 2: Hoare triple {3549#true} assume !(main_~length1~0#1 < 1); {3549#true} is VALID [2022-02-20 23:41:09,358 INFO L290 TraceCheckUtils]: 1: Hoare triple {3549#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3549#true} is VALID [2022-02-20 23:41:09,358 INFO L290 TraceCheckUtils]: 0: Hoare triple {3549#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3549#true} is VALID [2022-02-20 23:41:09,358 INFO L134 CoverageAnalysis]: Checked inductivity of 21 backedges. 5 proven. 7 refuted. 0 times theorem prover too weak. 0 trivial. 9 not checked. [2022-02-20 23:41:09,358 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [612485883] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:09,358 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:09,358 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 13] total 31 [2022-02-20 23:41:09,359 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [499660325] [2022-02-20 23:41:09,359 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:09,359 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 2.2580645161290325) internal successors, (70), 31 states have internal predecessors, (70), 0 states have call successors, (0), 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:09,359 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:09,359 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 31 states, 31 states have (on average 2.2580645161290325) internal successors, (70), 31 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call 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:09,420 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 69 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:09,420 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-02-20 23:41:09,420 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:09,421 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-02-20 23:41:09,421 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=97, Invalid=668, Unknown=3, NotChecked=162, Total=930 [2022-02-20 23:41:09,421 INFO L87 Difference]: Start difference. First operand 32 states and 33 transitions. Second operand has 31 states, 31 states have (on average 2.2580645161290325) internal successors, (70), 31 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call 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:09,815 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:09,815 INFO L93 Difference]: Finished difference Result 52 states and 53 transitions. [2022-02-20 23:41:09,815 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:41:09,815 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 2.2580645161290325) internal successors, (70), 31 states have internal predecessors, (70), 0 states have call successors, (0), 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:09,816 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:09,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 2.2580645161290325) internal successors, (70), 31 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call 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:09,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 44 transitions. [2022-02-20 23:41:09,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 31 states have (on average 2.2580645161290325) internal successors, (70), 31 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call 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:09,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 44 transitions. [2022-02-20 23:41:09,817 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 44 transitions. [2022-02-20 23:41:09,850 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:09,851 INFO L225 Difference]: With dead ends: 52 [2022-02-20 23:41:09,851 INFO L226 Difference]: Without dead ends: 39 [2022-02-20 23:41:09,851 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 41 SyntacticMatches, 2 SemanticMatches, 33 ConstructedPredicates, 3 IntricatePredicates, 1 DeprecatedPredicates, 217 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=129, Invalid=872, Unknown=3, NotChecked=186, Total=1190 [2022-02-20 23:41:09,852 INFO L933 BasicCegarLoop]: 11 mSDtfsCounter, 25 mSDsluCounter, 150 mSDsCounter, 0 mSdLazyCounter, 142 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 161 SdHoareTripleChecker+Invalid, 232 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 142 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 85 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:09,852 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [25 Valid, 161 Invalid, 232 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 142 Invalid, 0 Unknown, 85 Unchecked, 0.1s Time] [2022-02-20 23:41:09,853 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 39 states. [2022-02-20 23:41:09,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 39 to 36. [2022-02-20 23:41:09,853 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:09,853 INFO L82 GeneralOperation]: Start isEquivalent. First operand 39 states. Second operand has 36 states, 34 states have (on average 1.088235294117647) 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:09,854 INFO L74 IsIncluded]: Start isIncluded. First operand 39 states. Second operand has 36 states, 34 states have (on average 1.088235294117647) 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:09,854 INFO L87 Difference]: Start difference. First operand 39 states. Second operand has 36 states, 34 states have (on average 1.088235294117647) 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:09,854 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:09,854 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2022-02-20 23:41:09,854 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2022-02-20 23:41:09,855 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:09,855 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:09,855 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 34 states have (on average 1.088235294117647) 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 39 states. [2022-02-20 23:41:09,855 INFO L87 Difference]: Start difference. First operand has 36 states, 34 states have (on average 1.088235294117647) 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 39 states. [2022-02-20 23:41:09,855 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:09,855 INFO L93 Difference]: Finished difference Result 39 states and 40 transitions. [2022-02-20 23:41:09,856 INFO L276 IsEmpty]: Start isEmpty. Operand 39 states and 40 transitions. [2022-02-20 23:41:09,856 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:09,856 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:09,856 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:09,856 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:09,856 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 34 states have (on average 1.088235294117647) 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:09,857 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 37 transitions. [2022-02-20 23:41:09,857 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 37 transitions. Word has length 29 [2022-02-20 23:41:09,857 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:09,857 INFO L470 AbstractCegarLoop]: Abstraction has 36 states and 37 transitions. [2022-02-20 23:41:09,857 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 31 states, 31 states have (on average 2.2580645161290325) internal successors, (70), 31 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call 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:09,857 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 37 transitions. [2022-02-20 23:41:09,857 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-02-20 23:41:09,858 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:09,858 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:09,877 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:10,063 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:10,064 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:10,064 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:10,064 INFO L85 PathProgramCache]: Analyzing trace with hash 1267943126, now seen corresponding path program 4 times [2022-02-20 23:41:10,064 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:10,064 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1604770031] [2022-02-20 23:41:10,064 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:10,065 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:10,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:10,194 INFO L290 TraceCheckUtils]: 0: Hoare triple {3926#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3926#true} is VALID [2022-02-20 23:41:10,194 INFO L290 TraceCheckUtils]: 1: Hoare triple {3926#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3926#true} is VALID [2022-02-20 23:41:10,194 INFO L290 TraceCheckUtils]: 2: Hoare triple {3926#true} assume !(main_~length1~0#1 < 1); {3926#true} is VALID [2022-02-20 23:41:10,194 INFO L290 TraceCheckUtils]: 3: Hoare triple {3926#true} assume !(main_~length2~0#1 < 1); {3926#true} is VALID [2022-02-20 23:41:10,195 INFO L290 TraceCheckUtils]: 4: Hoare triple {3926#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3928#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,195 INFO L290 TraceCheckUtils]: 5: Hoare triple {3928#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3928#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,196 INFO L290 TraceCheckUtils]: 6: Hoare triple {3928#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3928#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,196 INFO L290 TraceCheckUtils]: 7: Hoare triple {3928#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {3928#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,196 INFO L290 TraceCheckUtils]: 8: Hoare triple {3928#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3929#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,197 INFO L290 TraceCheckUtils]: 9: Hoare triple {3929#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3929#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,197 INFO L290 TraceCheckUtils]: 10: Hoare triple {3929#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3929#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,197 INFO L290 TraceCheckUtils]: 11: Hoare triple {3929#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {3929#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,198 INFO L290 TraceCheckUtils]: 12: Hoare triple {3929#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3930#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:10,198 INFO L290 TraceCheckUtils]: 13: Hoare triple {3930#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,199 INFO L290 TraceCheckUtils]: 14: Hoare triple {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,199 INFO L290 TraceCheckUtils]: 15: Hoare triple {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,200 INFO L290 TraceCheckUtils]: 16: Hoare triple {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,200 INFO L290 TraceCheckUtils]: 17: Hoare triple {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,200 INFO L290 TraceCheckUtils]: 18: Hoare triple {3931#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3932#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:10,201 INFO L290 TraceCheckUtils]: 19: Hoare triple {3932#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {3933#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,201 INFO L290 TraceCheckUtils]: 20: Hoare triple {3933#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3933#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,202 INFO L290 TraceCheckUtils]: 21: Hoare triple {3933#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3933#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,202 INFO L290 TraceCheckUtils]: 22: Hoare triple {3933#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3933#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,202 INFO L290 TraceCheckUtils]: 23: Hoare triple {3933#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3934#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:10,203 INFO L290 TraceCheckUtils]: 24: Hoare triple {3934#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3934#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:10,203 INFO L290 TraceCheckUtils]: 25: Hoare triple {3934#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3934#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:10,203 INFO L290 TraceCheckUtils]: 26: Hoare triple {3934#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3934#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:10,204 INFO L290 TraceCheckUtils]: 27: Hoare triple {3934#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3935#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,204 INFO L290 TraceCheckUtils]: 28: Hoare triple {3935#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {3935#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,205 INFO L290 TraceCheckUtils]: 29: Hoare triple {3935#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {3935#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,205 INFO L290 TraceCheckUtils]: 30: Hoare triple {3935#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {3935#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,206 INFO L290 TraceCheckUtils]: 31: Hoare triple {3935#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {3936#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:10,206 INFO L290 TraceCheckUtils]: 32: Hoare triple {3936#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {3927#false} is VALID [2022-02-20 23:41:10,206 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 1 proven. 29 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:10,206 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:10,206 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1604770031] [2022-02-20 23:41:10,206 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1604770031] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:10,207 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [804383513] [2022-02-20 23:41:10,207 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:41:10,207 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:10,207 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:10,208 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:10,209 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:10,280 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:41:10,280 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:10,282 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 58 conjunts are in the unsatisfiable core [2022-02-20 23:41:10,295 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:10,297 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:10,331 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:41:10,331 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 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:41:10,339 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 10 treesize of output 8 [2022-02-20 23:41:10,614 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 12 [2022-02-20 23:41:10,705 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:41:10,811 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:41:10,895 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:10,895 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:11,005 INFO L290 TraceCheckUtils]: 0: Hoare triple {3926#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3926#true} is VALID [2022-02-20 23:41:11,005 INFO L290 TraceCheckUtils]: 1: Hoare triple {3926#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3926#true} is VALID [2022-02-20 23:41:11,005 INFO L290 TraceCheckUtils]: 2: Hoare triple {3926#true} assume !(main_~length1~0#1 < 1); {3926#true} is VALID [2022-02-20 23:41:11,005 INFO L290 TraceCheckUtils]: 3: Hoare triple {3926#true} assume !(main_~length2~0#1 < 1); {3926#true} is VALID [2022-02-20 23:41:11,006 INFO L290 TraceCheckUtils]: 4: Hoare triple {3926#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {3952#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:11,006 INFO L290 TraceCheckUtils]: 5: Hoare triple {3952#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3952#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:11,007 INFO L290 TraceCheckUtils]: 6: Hoare triple {3952#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3952#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:11,007 INFO L290 TraceCheckUtils]: 7: Hoare triple {3952#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {3952#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:11,008 INFO L290 TraceCheckUtils]: 8: Hoare triple {3952#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3965#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,008 INFO L290 TraceCheckUtils]: 9: Hoare triple {3965#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3965#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,009 INFO L290 TraceCheckUtils]: 10: Hoare triple {3965#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3965#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,009 INFO L290 TraceCheckUtils]: 11: Hoare triple {3965#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {3965#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,010 INFO L290 TraceCheckUtils]: 12: Hoare triple {3965#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3978#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:11,010 INFO L290 TraceCheckUtils]: 13: Hoare triple {3978#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {3978#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:11,011 INFO L290 TraceCheckUtils]: 14: Hoare triple {3978#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {3985#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,011 INFO L290 TraceCheckUtils]: 15: Hoare triple {3985#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {3985#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,011 INFO L290 TraceCheckUtils]: 16: Hoare triple {3985#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {3985#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,012 INFO L290 TraceCheckUtils]: 17: Hoare triple {3985#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {3985#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,012 INFO L290 TraceCheckUtils]: 18: Hoare triple {3985#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {3998#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString~0#1.offset| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,013 INFO L290 TraceCheckUtils]: 19: Hoare triple {3998#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString~0#1.offset| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 3 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {4002#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,013 INFO L290 TraceCheckUtils]: 20: Hoare triple {4002#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4002#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,014 INFO L290 TraceCheckUtils]: 21: Hoare triple {4002#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4002#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,014 INFO L290 TraceCheckUtils]: 22: Hoare triple {4002#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4002#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,015 INFO L290 TraceCheckUtils]: 23: Hoare triple {4002#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4015#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,015 INFO L290 TraceCheckUtils]: 24: Hoare triple {4015#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4015#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,016 INFO L290 TraceCheckUtils]: 25: Hoare triple {4015#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4022#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,016 INFO L290 TraceCheckUtils]: 26: Hoare triple {4022#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4022#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,017 INFO L290 TraceCheckUtils]: 27: Hoare triple {4022#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4029#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset|) 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,017 INFO L290 TraceCheckUtils]: 28: Hoare triple {4029#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset|) 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4033#(and (or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset|) 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {4033#(and (or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset|) 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4033#(and (or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset|) 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,019 INFO L290 TraceCheckUtils]: 30: Hoare triple {4033#(and (or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))) (= (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset|) 1) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4040#(and (not (= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,019 INFO L290 TraceCheckUtils]: 31: Hoare triple {4040#(and (not (= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4044#(and (not (= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,019 INFO L290 TraceCheckUtils]: 32: Hoare triple {4044#(and (not (= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (<= 3 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {3927#false} is VALID [2022-02-20 23:41:11,020 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 8 proven. 22 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:11,020 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:11,440 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:11,451 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:41:11,458 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:11,458 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 37 treesize of output 37 [2022-02-20 23:41:11,463 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 11 treesize of output 7 [2022-02-20 23:41:11,918 INFO L290 TraceCheckUtils]: 32: Hoare triple {4048#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {3927#false} is VALID [2022-02-20 23:41:11,919 INFO L290 TraceCheckUtils]: 31: Hoare triple {4052#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4048#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,919 INFO L290 TraceCheckUtils]: 30: Hoare triple {4056#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4052#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,920 INFO L290 TraceCheckUtils]: 29: Hoare triple {4056#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4056#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:11,921 INFO L290 TraceCheckUtils]: 28: Hoare triple {4063#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4056#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:11,922 INFO L290 TraceCheckUtils]: 27: Hoare triple {4067#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4063#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:11,922 INFO L290 TraceCheckUtils]: 26: Hoare triple {4067#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4067#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:11,923 INFO L290 TraceCheckUtils]: 25: Hoare triple {4074#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4067#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:11,924 INFO L290 TraceCheckUtils]: 24: Hoare triple {4074#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4074#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:11,924 INFO L290 TraceCheckUtils]: 23: Hoare triple {4081#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4074#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:11,925 INFO L290 TraceCheckUtils]: 22: Hoare triple {4081#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4081#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:11,926 WARN L290 TraceCheckUtils]: 21: Hoare triple {4081#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4081#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is UNKNOWN [2022-02-20 23:41:11,927 INFO L290 TraceCheckUtils]: 20: Hoare triple {4091#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4081#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:11,928 INFO L290 TraceCheckUtils]: 19: Hoare triple {4095#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_307) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0)) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {4091#(or (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_307) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:11,928 INFO L290 TraceCheckUtils]: 18: Hoare triple {4099#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {4095#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (forall ((v_ArrVal_307 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_307) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0)) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,929 INFO L290 TraceCheckUtils]: 17: Hoare triple {4099#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {4099#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,929 INFO L290 TraceCheckUtils]: 16: Hoare triple {4099#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4099#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,930 INFO L290 TraceCheckUtils]: 15: Hoare triple {4099#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {4099#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,931 INFO L290 TraceCheckUtils]: 14: Hoare triple {4112#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4099#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,931 INFO L290 TraceCheckUtils]: 13: Hoare triple {4112#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4112#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:11,932 INFO L290 TraceCheckUtils]: 12: Hoare triple {4119#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4112#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (not (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:11,932 INFO L290 TraceCheckUtils]: 11: Hoare triple {4119#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {4119#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,933 INFO L290 TraceCheckUtils]: 10: Hoare triple {4119#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4119#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,934 INFO L290 TraceCheckUtils]: 9: Hoare triple {4119#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4119#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,934 INFO L290 TraceCheckUtils]: 8: Hoare triple {4132#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4119#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,935 INFO L290 TraceCheckUtils]: 7: Hoare triple {4132#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {4132#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,935 INFO L290 TraceCheckUtils]: 6: Hoare triple {4132#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4132#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,936 INFO L290 TraceCheckUtils]: 5: Hoare triple {4132#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4132#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,937 INFO L290 TraceCheckUtils]: 4: Hoare triple {3926#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {4132#(or (not (<= 0 |ULTIMATE.start_main_~nondetString~0#1.offset|)) (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (= |ULTIMATE.start_main_~length2~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|))) (<= (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:11,937 INFO L290 TraceCheckUtils]: 3: Hoare triple {3926#true} assume !(main_~length2~0#1 < 1); {3926#true} is VALID [2022-02-20 23:41:11,937 INFO L290 TraceCheckUtils]: 2: Hoare triple {3926#true} assume !(main_~length1~0#1 < 1); {3926#true} is VALID [2022-02-20 23:41:11,937 INFO L290 TraceCheckUtils]: 1: Hoare triple {3926#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {3926#true} is VALID [2022-02-20 23:41:11,937 INFO L290 TraceCheckUtils]: 0: Hoare triple {3926#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3926#true} is VALID [2022-02-20 23:41:11,938 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 15 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:11,938 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [804383513] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:11,938 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:11,938 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 13, 14] total 35 [2022-02-20 23:41:11,938 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [638739845] [2022-02-20 23:41:11,938 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:11,938 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 35 states have (on average 2.6) internal successors, (91), 36 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 33 [2022-02-20 23:41:11,939 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:11,939 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 36 states, 35 states have (on average 2.6) internal successors, (91), 36 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call 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:12,011 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:12,012 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 36 states [2022-02-20 23:41:12,012 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:12,012 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2022-02-20 23:41:12,012 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=161, Invalid=1098, Unknown=1, NotChecked=0, Total=1260 [2022-02-20 23:41:12,013 INFO L87 Difference]: Start difference. First operand 36 states and 37 transitions. Second operand has 36 states, 35 states have (on average 2.6) internal successors, (91), 36 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call 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:13,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:13,356 INFO L93 Difference]: Finished difference Result 48 states and 49 transitions. [2022-02-20 23:41:13,356 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-02-20 23:41:13,357 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 35 states have (on average 2.6) internal successors, (91), 36 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 33 [2022-02-20 23:41:13,357 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:13,357 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 2.6) internal successors, (91), 36 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call 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:13,358 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 51 transitions. [2022-02-20 23:41:13,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 2.6) internal successors, (91), 36 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call 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:13,358 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 51 transitions. [2022-02-20 23:41:13,359 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 51 transitions. [2022-02-20 23:41:13,409 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:13,409 INFO L225 Difference]: With dead ends: 48 [2022-02-20 23:41:13,410 INFO L226 Difference]: Without dead ends: 48 [2022-02-20 23:41:13,410 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 93 GetRequests, 42 SyntacticMatches, 3 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 352 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=390, Invalid=2052, Unknown=8, NotChecked=0, Total=2450 [2022-02-20 23:41:13,411 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 74 mSDsluCounter, 165 mSDsCounter, 0 mSdLazyCounter, 421 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 74 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 537 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 421 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 73 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:13,411 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [74 Valid, 177 Invalid, 537 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 421 Invalid, 0 Unknown, 73 Unchecked, 0.4s Time] [2022-02-20 23:41:13,412 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-02-20 23:41:13,417 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 43. [2022-02-20 23:41:13,417 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:13,418 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 43 states, 41 states have (on average 1.0975609756097562) internal successors, (45), 42 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:13,418 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 43 states, 41 states have (on average 1.0975609756097562) internal successors, (45), 42 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:13,418 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 43 states, 41 states have (on average 1.0975609756097562) internal successors, (45), 42 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:13,419 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:13,419 INFO L93 Difference]: Finished difference Result 48 states and 49 transitions. [2022-02-20 23:41:13,419 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 49 transitions. [2022-02-20 23:41:13,419 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:13,419 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:13,419 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 41 states have (on average 1.0975609756097562) internal successors, (45), 42 states have internal predecessors, (45), 0 states have call successors, (0), 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:13,419 INFO L87 Difference]: Start difference. First operand has 43 states, 41 states have (on average 1.0975609756097562) internal successors, (45), 42 states have internal predecessors, (45), 0 states have call successors, (0), 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:13,420 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:13,420 INFO L93 Difference]: Finished difference Result 48 states and 49 transitions. [2022-02-20 23:41:13,420 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 49 transitions. [2022-02-20 23:41:13,420 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:13,421 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:13,421 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:13,421 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:13,421 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 41 states have (on average 1.0975609756097562) internal successors, (45), 42 states have internal predecessors, (45), 0 states have call successors, (0), 0 states have call 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:13,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 45 transitions. [2022-02-20 23:41:13,422 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 45 transitions. Word has length 33 [2022-02-20 23:41:13,422 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:13,422 INFO L470 AbstractCegarLoop]: Abstraction has 43 states and 45 transitions. [2022-02-20 23:41:13,422 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 36 states, 35 states have (on average 2.6) internal successors, (91), 36 states have internal predecessors, (91), 0 states have call successors, (0), 0 states have call 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:13,422 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 45 transitions. [2022-02-20 23:41:13,423 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-02-20 23:41:13,423 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:13,423 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:13,445 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:13,631 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:13,632 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:13,632 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:13,632 INFO L85 PathProgramCache]: Analyzing trace with hash 651531229, now seen corresponding path program 3 times [2022-02-20 23:41:13,632 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:13,632 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [627668888] [2022-02-20 23:41:13,632 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:13,633 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:13,663 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:13,785 INFO L290 TraceCheckUtils]: 0: Hoare triple {4376#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4376#true} is VALID [2022-02-20 23:41:13,786 INFO L290 TraceCheckUtils]: 1: Hoare triple {4376#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {4376#true} is VALID [2022-02-20 23:41:13,786 INFO L290 TraceCheckUtils]: 2: Hoare triple {4376#true} assume !(main_~length1~0#1 < 1); {4376#true} is VALID [2022-02-20 23:41:13,786 INFO L290 TraceCheckUtils]: 3: Hoare triple {4376#true} assume !(main_~length2~0#1 < 1); {4376#true} is VALID [2022-02-20 23:41:13,787 INFO L290 TraceCheckUtils]: 4: Hoare triple {4376#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {4378#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,788 INFO L290 TraceCheckUtils]: 5: Hoare triple {4378#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4378#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,788 INFO L290 TraceCheckUtils]: 6: Hoare triple {4378#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4378#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,789 INFO L290 TraceCheckUtils]: 7: Hoare triple {4378#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {4378#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,789 INFO L290 TraceCheckUtils]: 8: Hoare triple {4378#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4379#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:13,790 INFO L290 TraceCheckUtils]: 9: Hoare triple {4379#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4379#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:13,790 INFO L290 TraceCheckUtils]: 10: Hoare triple {4379#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4379#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:13,791 INFO L290 TraceCheckUtils]: 11: Hoare triple {4379#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {4379#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:13,791 INFO L290 TraceCheckUtils]: 12: Hoare triple {4379#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4380#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:13,792 INFO L290 TraceCheckUtils]: 13: Hoare triple {4380#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,792 INFO L290 TraceCheckUtils]: 14: Hoare triple {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,793 INFO L290 TraceCheckUtils]: 15: Hoare triple {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,794 INFO L290 TraceCheckUtils]: 16: Hoare triple {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,794 INFO L290 TraceCheckUtils]: 17: Hoare triple {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,795 INFO L290 TraceCheckUtils]: 18: Hoare triple {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:13,795 INFO L290 TraceCheckUtils]: 19: Hoare triple {4381#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {4382#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:13,795 INFO L290 TraceCheckUtils]: 20: Hoare triple {4382#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4382#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:13,796 INFO L290 TraceCheckUtils]: 21: Hoare triple {4382#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4382#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:13,796 INFO L290 TraceCheckUtils]: 22: Hoare triple {4382#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4382#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:13,797 INFO L290 TraceCheckUtils]: 23: Hoare triple {4382#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4383#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:13,797 INFO L290 TraceCheckUtils]: 24: Hoare triple {4383#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4383#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:13,797 INFO L290 TraceCheckUtils]: 25: Hoare triple {4383#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4383#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:13,798 INFO L290 TraceCheckUtils]: 26: Hoare triple {4383#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4383#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:13,798 INFO L290 TraceCheckUtils]: 27: Hoare triple {4383#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4384#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:13,799 INFO L290 TraceCheckUtils]: 28: Hoare triple {4384#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4384#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:13,799 INFO L290 TraceCheckUtils]: 29: Hoare triple {4384#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4384#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:13,800 INFO L290 TraceCheckUtils]: 30: Hoare triple {4384#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4384#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:13,800 INFO L290 TraceCheckUtils]: 31: Hoare triple {4384#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4385#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:13,800 INFO L290 TraceCheckUtils]: 32: Hoare triple {4385#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4385#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:13,801 INFO L290 TraceCheckUtils]: 33: Hoare triple {4385#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {4377#false} is VALID [2022-02-20 23:41:13,801 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 1 proven. 32 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:13,801 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:13,801 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [627668888] [2022-02-20 23:41:13,801 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [627668888] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:13,802 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1912045919] [2022-02-20 23:41:13,802 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:41:13,802 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:13,802 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:13,803 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:13,804 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:13,880 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-02-20 23:41:13,880 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:13,882 INFO L263 TraceCheckSpWp]: Trace formula consists of 198 conjuncts, 47 conjunts are in the unsatisfiable core [2022-02-20 23:41:13,894 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:13,895 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:13,988 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:41:13,988 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 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:41:14,016 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 10 treesize of output 8 [2022-02-20 23:41:14,556 INFO L290 TraceCheckUtils]: 0: Hoare triple {4376#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4376#true} is VALID [2022-02-20 23:41:14,556 INFO L290 TraceCheckUtils]: 1: Hoare triple {4376#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {4376#true} is VALID [2022-02-20 23:41:14,556 INFO L290 TraceCheckUtils]: 2: Hoare triple {4376#true} assume !(main_~length1~0#1 < 1); {4376#true} is VALID [2022-02-20 23:41:14,556 INFO L290 TraceCheckUtils]: 3: Hoare triple {4376#true} assume !(main_~length2~0#1 < 1); {4376#true} is VALID [2022-02-20 23:41:14,557 INFO L290 TraceCheckUtils]: 4: Hoare triple {4376#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {4401#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,558 INFO L290 TraceCheckUtils]: 5: Hoare triple {4401#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4401#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,558 INFO L290 TraceCheckUtils]: 6: Hoare triple {4401#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4401#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,559 INFO L290 TraceCheckUtils]: 7: Hoare triple {4401#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {4401#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,559 INFO L290 TraceCheckUtils]: 8: Hoare triple {4401#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4414#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,560 INFO L290 TraceCheckUtils]: 9: Hoare triple {4414#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4414#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,560 INFO L290 TraceCheckUtils]: 10: Hoare triple {4414#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4414#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,560 INFO L290 TraceCheckUtils]: 11: Hoare triple {4414#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {4414#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,561 INFO L290 TraceCheckUtils]: 12: Hoare triple {4414#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4427#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,562 INFO L290 TraceCheckUtils]: 13: Hoare triple {4427#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,562 INFO L290 TraceCheckUtils]: 14: Hoare triple {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,563 INFO L290 TraceCheckUtils]: 15: Hoare triple {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,563 INFO L290 TraceCheckUtils]: 16: Hoare triple {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,564 INFO L290 TraceCheckUtils]: 17: Hoare triple {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,564 INFO L290 TraceCheckUtils]: 18: Hoare triple {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:14,565 INFO L290 TraceCheckUtils]: 19: Hoare triple {4431#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 3 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {4450#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,566 INFO L290 TraceCheckUtils]: 20: Hoare triple {4450#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4450#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,566 INFO L290 TraceCheckUtils]: 21: Hoare triple {4450#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4450#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,566 INFO L290 TraceCheckUtils]: 22: Hoare triple {4450#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4450#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {4450#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4463#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,567 INFO L290 TraceCheckUtils]: 24: Hoare triple {4463#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4463#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,568 INFO L290 TraceCheckUtils]: 25: Hoare triple {4463#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4463#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,568 INFO L290 TraceCheckUtils]: 26: Hoare triple {4463#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4463#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,569 INFO L290 TraceCheckUtils]: 27: Hoare triple {4463#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4476#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,569 INFO L290 TraceCheckUtils]: 28: Hoare triple {4476#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4476#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,570 INFO L290 TraceCheckUtils]: 29: Hoare triple {4476#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4483#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,570 INFO L290 TraceCheckUtils]: 30: Hoare triple {4483#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4483#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:14,571 INFO L290 TraceCheckUtils]: 31: Hoare triple {4483#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4490#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} is VALID [2022-02-20 23:41:14,571 INFO L290 TraceCheckUtils]: 32: Hoare triple {4490#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4490#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} is VALID [2022-02-20 23:41:14,572 INFO L290 TraceCheckUtils]: 33: Hoare triple {4490#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (< 3 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {4377#false} is VALID [2022-02-20 23:41:14,572 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 6 proven. 27 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:14,572 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:15,306 INFO L290 TraceCheckUtils]: 33: Hoare triple {4497#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {4377#false} is VALID [2022-02-20 23:41:15,307 INFO L290 TraceCheckUtils]: 32: Hoare triple {4497#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4497#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:15,307 INFO L290 TraceCheckUtils]: 31: Hoare triple {4504#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4497#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:15,308 INFO L290 TraceCheckUtils]: 30: Hoare triple {4504#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4504#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,308 INFO L290 TraceCheckUtils]: 29: Hoare triple {4511#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4504#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,309 INFO L290 TraceCheckUtils]: 28: Hoare triple {4511#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4511#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:15,310 INFO L290 TraceCheckUtils]: 27: Hoare triple {4518#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4511#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:15,310 INFO L290 TraceCheckUtils]: 26: Hoare triple {4518#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4518#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,310 INFO L290 TraceCheckUtils]: 25: Hoare triple {4518#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4518#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,311 INFO L290 TraceCheckUtils]: 24: Hoare triple {4518#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4518#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,311 INFO L290 TraceCheckUtils]: 23: Hoare triple {4531#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4518#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,312 INFO L290 TraceCheckUtils]: 22: Hoare triple {4531#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4531#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,312 INFO L290 TraceCheckUtils]: 21: Hoare triple {4531#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4531#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,313 INFO L290 TraceCheckUtils]: 20: Hoare triple {4531#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4531#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,313 INFO L290 TraceCheckUtils]: 19: Hoare triple {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {4531#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:15,314 INFO L290 TraceCheckUtils]: 18: Hoare triple {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,314 INFO L290 TraceCheckUtils]: 17: Hoare triple {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,314 INFO L290 TraceCheckUtils]: 16: Hoare triple {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,315 INFO L290 TraceCheckUtils]: 15: Hoare triple {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} havoc main_#t~nondet10#1; {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,315 INFO L290 TraceCheckUtils]: 14: Hoare triple {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,316 INFO L290 TraceCheckUtils]: 13: Hoare triple {4563#(or (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4544#(or (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,316 INFO L290 TraceCheckUtils]: 12: Hoare triple {4567#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4563#(or (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,317 INFO L290 TraceCheckUtils]: 11: Hoare triple {4567#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} havoc main_#t~nondet10#1; {4567#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,317 INFO L290 TraceCheckUtils]: 10: Hoare triple {4567#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4567#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {4567#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4567#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {4580#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4567#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,319 INFO L290 TraceCheckUtils]: 7: Hoare triple {4580#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} havoc main_#t~nondet10#1; {4580#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,319 INFO L290 TraceCheckUtils]: 6: Hoare triple {4580#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4580#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,320 INFO L290 TraceCheckUtils]: 5: Hoare triple {4580#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4580#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,320 INFO L290 TraceCheckUtils]: 4: Hoare triple {4376#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {4580#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ 2 |ULTIMATE.start_main_~nondetArea~0#1.offset|) 0))} is VALID [2022-02-20 23:41:15,321 INFO L290 TraceCheckUtils]: 3: Hoare triple {4376#true} assume !(main_~length2~0#1 < 1); {4376#true} is VALID [2022-02-20 23:41:15,321 INFO L290 TraceCheckUtils]: 2: Hoare triple {4376#true} assume !(main_~length1~0#1 < 1); {4376#true} is VALID [2022-02-20 23:41:15,321 INFO L290 TraceCheckUtils]: 1: Hoare triple {4376#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {4376#true} is VALID [2022-02-20 23:41:15,321 INFO L290 TraceCheckUtils]: 0: Hoare triple {4376#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4376#true} is VALID [2022-02-20 23:41:15,321 INFO L134 CoverageAnalysis]: Checked inductivity of 33 backedges. 15 proven. 18 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:15,321 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1912045919] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:15,321 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:15,322 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10, 10] total 27 [2022-02-20 23:41:15,322 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [999065003] [2022-02-20 23:41:15,322 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:15,322 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 3.4814814814814814) internal successors, (94), 28 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 34 [2022-02-20 23:41:15,322 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:15,323 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 28 states, 27 states have (on average 3.4814814814814814) internal successors, (94), 28 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:41:15,394 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:41:15,394 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-02-20 23:41:15,394 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:15,395 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-02-20 23:41:15,395 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=114, Invalid=642, Unknown=0, NotChecked=0, Total=756 [2022-02-20 23:41:15,395 INFO L87 Difference]: Start difference. First operand 43 states and 45 transitions. Second operand has 28 states, 27 states have (on average 3.4814814814814814) internal successors, (94), 28 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:41:16,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:16,297 INFO L93 Difference]: Finished difference Result 43 states and 44 transitions. [2022-02-20 23:41:16,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:41:16,298 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 3.4814814814814814) internal successors, (94), 28 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 34 [2022-02-20 23:41:16,298 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:16,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 3.4814814814814814) internal successors, (94), 28 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:41:16,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 44 transitions. [2022-02-20 23:41:16,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 3.4814814814814814) internal successors, (94), 28 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:41:16,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 44 transitions. [2022-02-20 23:41:16,299 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 44 transitions. [2022-02-20 23:41:16,336 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:16,337 INFO L225 Difference]: With dead ends: 43 [2022-02-20 23:41:16,337 INFO L226 Difference]: Without dead ends: 43 [2022-02-20 23:41:16,337 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 84 GetRequests, 49 SyntacticMatches, 0 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 162 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=266, Invalid=1066, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 23:41:16,337 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 169 mSDsluCounter, 100 mSDsCounter, 0 mSdLazyCounter, 281 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 169 SdHoareTripleChecker+Valid, 112 SdHoareTripleChecker+Invalid, 330 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 281 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:16,338 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [169 Valid, 112 Invalid, 330 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 281 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:41:16,338 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-02-20 23:41:16,338 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 43. [2022-02-20 23:41:16,338 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:16,338 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 43 states, 41 states have (on average 1.0731707317073171) internal successors, (44), 42 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call 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:16,339 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 43 states, 41 states have (on average 1.0731707317073171) internal successors, (44), 42 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call 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:16,339 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 43 states, 41 states have (on average 1.0731707317073171) internal successors, (44), 42 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call 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:16,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:16,339 INFO L93 Difference]: Finished difference Result 43 states and 44 transitions. [2022-02-20 23:41:16,339 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 44 transitions. [2022-02-20 23:41:16,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:16,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:16,340 INFO L74 IsIncluded]: Start isIncluded. First operand has 43 states, 41 states have (on average 1.0731707317073171) internal successors, (44), 42 states have internal predecessors, (44), 0 states have call successors, (0), 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:16,340 INFO L87 Difference]: Start difference. First operand has 43 states, 41 states have (on average 1.0731707317073171) internal successors, (44), 42 states have internal predecessors, (44), 0 states have call successors, (0), 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:16,340 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:16,340 INFO L93 Difference]: Finished difference Result 43 states and 44 transitions. [2022-02-20 23:41:16,340 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 44 transitions. [2022-02-20 23:41:16,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:16,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:16,341 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:16,341 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:16,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 43 states, 41 states have (on average 1.0731707317073171) internal successors, (44), 42 states have internal predecessors, (44), 0 states have call successors, (0), 0 states have call 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:16,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 44 transitions. [2022-02-20 23:41:16,341 INFO L78 Accepts]: Start accepts. Automaton has 43 states and 44 transitions. Word has length 34 [2022-02-20 23:41:16,341 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:16,341 INFO L470 AbstractCegarLoop]: Abstraction has 43 states and 44 transitions. [2022-02-20 23:41:16,341 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 27 states have (on average 3.4814814814814814) internal successors, (94), 28 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:41:16,341 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 44 transitions. [2022-02-20 23:41:16,342 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-02-20 23:41:16,342 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:16,342 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:16,367 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:16,542 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,SelfDestructingSolverStorable22 [2022-02-20 23:41:16,542 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:16,543 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:16,543 INFO L85 PathProgramCache]: Analyzing trace with hash -671378910, now seen corresponding path program 4 times [2022-02-20 23:41:16,543 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:16,543 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [292027016] [2022-02-20 23:41:16,543 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:16,543 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:16,566 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:16,675 INFO L290 TraceCheckUtils]: 0: Hoare triple {4794#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4794#true} is VALID [2022-02-20 23:41:16,675 INFO L290 TraceCheckUtils]: 1: Hoare triple {4794#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {4794#true} is VALID [2022-02-20 23:41:16,675 INFO L290 TraceCheckUtils]: 2: Hoare triple {4794#true} assume !(main_~length1~0#1 < 1); {4794#true} is VALID [2022-02-20 23:41:16,675 INFO L290 TraceCheckUtils]: 3: Hoare triple {4794#true} assume !(main_~length2~0#1 < 1); {4794#true} is VALID [2022-02-20 23:41:16,676 INFO L290 TraceCheckUtils]: 4: Hoare triple {4794#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {4796#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:16,678 INFO L290 TraceCheckUtils]: 5: Hoare triple {4796#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4796#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:16,678 INFO L290 TraceCheckUtils]: 6: Hoare triple {4796#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4796#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:16,679 INFO L290 TraceCheckUtils]: 7: Hoare triple {4796#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {4796#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:16,679 INFO L290 TraceCheckUtils]: 8: Hoare triple {4796#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4797#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 1)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:16,680 INFO L290 TraceCheckUtils]: 9: Hoare triple {4797#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 1)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4797#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 1)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:16,680 INFO L290 TraceCheckUtils]: 10: Hoare triple {4797#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 1)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4797#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 1)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:16,681 INFO L290 TraceCheckUtils]: 11: Hoare triple {4797#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 1)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {4797#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 1)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:16,681 INFO L290 TraceCheckUtils]: 12: Hoare triple {4797#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 1)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4798#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:41:16,682 INFO L290 TraceCheckUtils]: 13: Hoare triple {4798#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 2)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4798#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:41:16,682 INFO L290 TraceCheckUtils]: 14: Hoare triple {4798#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4798#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:41:16,682 INFO L290 TraceCheckUtils]: 15: Hoare triple {4798#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 2)))} havoc main_#t~nondet10#1; {4798#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:41:16,683 INFO L290 TraceCheckUtils]: 16: Hoare triple {4798#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 2)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4799#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 3)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:16,684 INFO L290 TraceCheckUtils]: 17: Hoare triple {4799#(and (<= (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (+ |ULTIMATE.start_main_~length2~0#1| 3)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {4800#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:16,684 INFO L290 TraceCheckUtils]: 18: Hoare triple {4800#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {4800#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:16,685 INFO L290 TraceCheckUtils]: 19: Hoare triple {4800#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {4801#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:16,685 INFO L290 TraceCheckUtils]: 20: Hoare triple {4801#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4801#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:16,685 INFO L290 TraceCheckUtils]: 21: Hoare triple {4801#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4801#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:16,686 INFO L290 TraceCheckUtils]: 22: Hoare triple {4801#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4801#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:16,686 INFO L290 TraceCheckUtils]: 23: Hoare triple {4801#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} is VALID [2022-02-20 23:41:16,686 INFO L290 TraceCheckUtils]: 24: Hoare triple {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} is VALID [2022-02-20 23:41:16,687 INFO L290 TraceCheckUtils]: 25: Hoare triple {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} is VALID [2022-02-20 23:41:16,687 INFO L290 TraceCheckUtils]: 26: Hoare triple {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} is VALID [2022-02-20 23:41:16,687 INFO L290 TraceCheckUtils]: 27: Hoare triple {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} is VALID [2022-02-20 23:41:16,688 INFO L290 TraceCheckUtils]: 28: Hoare triple {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} is VALID [2022-02-20 23:41:16,688 INFO L290 TraceCheckUtils]: 29: Hoare triple {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} is VALID [2022-02-20 23:41:16,688 INFO L290 TraceCheckUtils]: 30: Hoare triple {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} is VALID [2022-02-20 23:41:16,689 INFO L290 TraceCheckUtils]: 31: Hoare triple {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:16,689 INFO L290 TraceCheckUtils]: 32: Hoare triple {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:16,689 INFO L290 TraceCheckUtils]: 33: Hoare triple {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:16,690 INFO L290 TraceCheckUtils]: 34: Hoare triple {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:16,690 INFO L290 TraceCheckUtils]: 35: Hoare triple {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4805#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|)} is VALID [2022-02-20 23:41:16,690 INFO L290 TraceCheckUtils]: 36: Hoare triple {4805#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4795#false} is VALID [2022-02-20 23:41:16,691 INFO L290 TraceCheckUtils]: 37: Hoare triple {4795#false} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {4795#false} is VALID [2022-02-20 23:41:16,691 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 19 proven. 28 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:16,691 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:16,691 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [292027016] [2022-02-20 23:41:16,691 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [292027016] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:16,691 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [995673226] [2022-02-20 23:41:16,691 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:41:16,691 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:16,691 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:16,692 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:16,693 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:16,764 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:41:16,764 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:16,765 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 27 conjunts are in the unsatisfiable core [2022-02-20 23:41:16,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:16,795 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:16,849 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:41:16,849 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 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:41:17,238 INFO L290 TraceCheckUtils]: 0: Hoare triple {4794#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4794#true} is VALID [2022-02-20 23:41:17,238 INFO L290 TraceCheckUtils]: 1: Hoare triple {4794#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {4794#true} is VALID [2022-02-20 23:41:17,238 INFO L290 TraceCheckUtils]: 2: Hoare triple {4794#true} assume !(main_~length1~0#1 < 1); {4794#true} is VALID [2022-02-20 23:41:17,238 INFO L290 TraceCheckUtils]: 3: Hoare triple {4794#true} assume !(main_~length2~0#1 < 1); {4794#true} is VALID [2022-02-20 23:41:17,239 INFO L290 TraceCheckUtils]: 4: Hoare triple {4794#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {4821#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,239 INFO L290 TraceCheckUtils]: 5: Hoare triple {4821#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4821#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,240 INFO L290 TraceCheckUtils]: 6: Hoare triple {4821#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4821#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,240 INFO L290 TraceCheckUtils]: 7: Hoare triple {4821#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {4821#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,241 INFO L290 TraceCheckUtils]: 8: Hoare triple {4821#(and (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4834#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:17,241 INFO L290 TraceCheckUtils]: 9: Hoare triple {4834#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4834#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:17,241 INFO L290 TraceCheckUtils]: 10: Hoare triple {4834#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4834#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:17,242 INFO L290 TraceCheckUtils]: 11: Hoare triple {4834#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet10#1; {4834#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:17,242 INFO L290 TraceCheckUtils]: 12: Hoare triple {4834#(and (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4847#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,242 INFO L290 TraceCheckUtils]: 13: Hoare triple {4847#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4847#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,243 INFO L290 TraceCheckUtils]: 14: Hoare triple {4847#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4847#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,243 INFO L290 TraceCheckUtils]: 15: Hoare triple {4847#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {4847#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,244 INFO L290 TraceCheckUtils]: 16: Hoare triple {4847#(and (<= |ULTIMATE.start_main_~i~0#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4860#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,244 INFO L290 TraceCheckUtils]: 17: Hoare triple {4860#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {4864#(<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4)} is VALID [2022-02-20 23:41:17,244 INFO L290 TraceCheckUtils]: 18: Hoare triple {4864#(<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4)} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {4864#(<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4)} is VALID [2022-02-20 23:41:17,245 INFO L290 TraceCheckUtils]: 19: Hoare triple {4864#(<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4)} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {4871#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)} is VALID [2022-02-20 23:41:17,245 INFO L290 TraceCheckUtils]: 20: Hoare triple {4871#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4875#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:17,246 INFO L290 TraceCheckUtils]: 21: Hoare triple {4875#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4875#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:17,246 INFO L290 TraceCheckUtils]: 22: Hoare triple {4875#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4875#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:17,247 INFO L290 TraceCheckUtils]: 23: Hoare triple {4875#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4885#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:17,247 INFO L290 TraceCheckUtils]: 24: Hoare triple {4885#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4885#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:17,248 INFO L290 TraceCheckUtils]: 25: Hoare triple {4885#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4885#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:17,248 INFO L290 TraceCheckUtils]: 26: Hoare triple {4885#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4885#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:17,248 INFO L290 TraceCheckUtils]: 27: Hoare triple {4885#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4898#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:17,249 INFO L290 TraceCheckUtils]: 28: Hoare triple {4898#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4898#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:17,249 INFO L290 TraceCheckUtils]: 29: Hoare triple {4898#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4898#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:17,250 INFO L290 TraceCheckUtils]: 30: Hoare triple {4898#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4898#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:17,250 INFO L290 TraceCheckUtils]: 31: Hoare triple {4898#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4911#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:17,251 INFO L290 TraceCheckUtils]: 32: Hoare triple {4911#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4911#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:17,251 INFO L290 TraceCheckUtils]: 33: Hoare triple {4911#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4911#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:17,251 INFO L290 TraceCheckUtils]: 34: Hoare triple {4911#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4911#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:17,252 INFO L290 TraceCheckUtils]: 35: Hoare triple {4911#(and (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4924#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} is VALID [2022-02-20 23:41:17,252 INFO L290 TraceCheckUtils]: 36: Hoare triple {4924#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4795#false} is VALID [2022-02-20 23:41:17,253 INFO L290 TraceCheckUtils]: 37: Hoare triple {4795#false} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {4795#false} is VALID [2022-02-20 23:41:17,253 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 32 proven. 15 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:17,253 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:17,597 INFO L290 TraceCheckUtils]: 37: Hoare triple {4795#false} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {4795#false} is VALID [2022-02-20 23:41:17,597 INFO L290 TraceCheckUtils]: 36: Hoare triple {4805#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4795#false} is VALID [2022-02-20 23:41:17,598 INFO L290 TraceCheckUtils]: 35: Hoare triple {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4805#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|)} is VALID [2022-02-20 23:41:17,598 INFO L290 TraceCheckUtils]: 34: Hoare triple {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:17,599 INFO L290 TraceCheckUtils]: 33: Hoare triple {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:17,599 INFO L290 TraceCheckUtils]: 32: Hoare triple {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:17,599 INFO L290 TraceCheckUtils]: 31: Hoare triple {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4804#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))} is VALID [2022-02-20 23:41:17,600 INFO L290 TraceCheckUtils]: 30: Hoare triple {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} is VALID [2022-02-20 23:41:17,600 INFO L290 TraceCheckUtils]: 29: Hoare triple {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} is VALID [2022-02-20 23:41:17,600 INFO L290 TraceCheckUtils]: 28: Hoare triple {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} is VALID [2022-02-20 23:41:17,601 INFO L290 TraceCheckUtils]: 27: Hoare triple {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4803#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))} is VALID [2022-02-20 23:41:17,601 INFO L290 TraceCheckUtils]: 26: Hoare triple {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} is VALID [2022-02-20 23:41:17,601 INFO L290 TraceCheckUtils]: 25: Hoare triple {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} is VALID [2022-02-20 23:41:17,610 INFO L290 TraceCheckUtils]: 24: Hoare triple {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} is VALID [2022-02-20 23:41:17,611 INFO L290 TraceCheckUtils]: 23: Hoare triple {4973#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {4802#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3))} is VALID [2022-02-20 23:41:17,611 INFO L290 TraceCheckUtils]: 22: Hoare triple {4973#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {4973#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))} is VALID [2022-02-20 23:41:17,612 INFO L290 TraceCheckUtils]: 21: Hoare triple {4973#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {4973#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))} is VALID [2022-02-20 23:41:17,612 INFO L290 TraceCheckUtils]: 20: Hoare triple {4871#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {4973#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))} is VALID [2022-02-20 23:41:17,612 INFO L290 TraceCheckUtils]: 19: Hoare triple {4864#(<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4)} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {4871#(<= (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)} is VALID [2022-02-20 23:41:17,613 INFO L290 TraceCheckUtils]: 18: Hoare triple {4864#(<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4)} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {4864#(<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4)} is VALID [2022-02-20 23:41:17,613 INFO L290 TraceCheckUtils]: 17: Hoare triple {4992#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {4864#(<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4)} is VALID [2022-02-20 23:41:17,613 INFO L290 TraceCheckUtils]: 16: Hoare triple {4996#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4992#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,614 INFO L290 TraceCheckUtils]: 15: Hoare triple {4996#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} havoc main_#t~nondet10#1; {4996#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,614 INFO L290 TraceCheckUtils]: 14: Hoare triple {4996#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {4996#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,614 INFO L290 TraceCheckUtils]: 13: Hoare triple {4996#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {4996#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,615 INFO L290 TraceCheckUtils]: 12: Hoare triple {5009#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {4996#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,615 INFO L290 TraceCheckUtils]: 11: Hoare triple {5009#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} havoc main_#t~nondet10#1; {5009#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,615 INFO L290 TraceCheckUtils]: 10: Hoare triple {5009#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5009#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,616 INFO L290 TraceCheckUtils]: 9: Hoare triple {5009#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5009#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,616 INFO L290 TraceCheckUtils]: 8: Hoare triple {5022#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4) (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5009#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4))} is VALID [2022-02-20 23:41:17,616 INFO L290 TraceCheckUtils]: 7: Hoare triple {5022#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4) (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {5022#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4) (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,616 INFO L290 TraceCheckUtils]: 6: Hoare triple {5022#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4) (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5022#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4) (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,617 INFO L290 TraceCheckUtils]: 5: Hoare triple {5022#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4) (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5022#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4) (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,617 INFO L290 TraceCheckUtils]: 4: Hoare triple {4794#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {5022#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) 4) (< (+ |ULTIMATE.start_main_~i~0#1| 4) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:17,618 INFO L290 TraceCheckUtils]: 3: Hoare triple {4794#true} assume !(main_~length2~0#1 < 1); {4794#true} is VALID [2022-02-20 23:41:17,618 INFO L290 TraceCheckUtils]: 2: Hoare triple {4794#true} assume !(main_~length1~0#1 < 1); {4794#true} is VALID [2022-02-20 23:41:17,618 INFO L290 TraceCheckUtils]: 1: Hoare triple {4794#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {4794#true} is VALID [2022-02-20 23:41:17,618 INFO L290 TraceCheckUtils]: 0: Hoare triple {4794#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4794#true} is VALID [2022-02-20 23:41:17,618 INFO L134 CoverageAnalysis]: Checked inductivity of 47 backedges. 28 proven. 19 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:17,618 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [995673226] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:17,618 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:17,618 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 13] total 28 [2022-02-20 23:41:17,618 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [43563903] [2022-02-20 23:41:17,618 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:17,619 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 28 states have (on average 3.1785714285714284) internal successors, (89), 28 states have internal predecessors, (89), 0 states have call successors, (0), 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 38 [2022-02-20 23:41:17,619 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:17,619 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 28 states, 28 states have (on average 3.1785714285714284) internal successors, (89), 28 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call 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:17,679 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:17,679 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-02-20 23:41:17,679 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:17,680 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-02-20 23:41:17,680 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=147, Invalid=609, Unknown=0, NotChecked=0, Total=756 [2022-02-20 23:41:17,680 INFO L87 Difference]: Start difference. First operand 43 states and 44 transitions. Second operand has 28 states, 28 states have (on average 3.1785714285714284) internal successors, (89), 28 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call 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:18,270 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:18,270 INFO L93 Difference]: Finished difference Result 69 states and 70 transitions. [2022-02-20 23:41:18,270 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:41:18,270 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 28 states have (on average 3.1785714285714284) internal successors, (89), 28 states have internal predecessors, (89), 0 states have call successors, (0), 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 38 [2022-02-20 23:41:18,271 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:18,271 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 3.1785714285714284) internal successors, (89), 28 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call 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:18,271 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 54 transitions. [2022-02-20 23:41:18,271 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 3.1785714285714284) internal successors, (89), 28 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call 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:18,273 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 54 transitions. [2022-02-20 23:41:18,273 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 54 transitions. [2022-02-20 23:41:18,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:18,314 INFO L225 Difference]: With dead ends: 69 [2022-02-20 23:41:18,314 INFO L226 Difference]: Without dead ends: 50 [2022-02-20 23:41:18,315 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 95 GetRequests, 59 SyntacticMatches, 1 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 273 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=290, Invalid=1042, Unknown=0, NotChecked=0, Total=1332 [2022-02-20 23:41:18,315 INFO L933 BasicCegarLoop]: 12 mSDtfsCounter, 77 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 222 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 239 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 222 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:18,315 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [77 Valid, 90 Invalid, 239 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 222 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:41:18,316 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-02-20 23:41:18,323 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 47. [2022-02-20 23:41:18,323 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:18,323 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 47 states, 45 states have (on average 1.0666666666666667) 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:18,323 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 47 states, 45 states have (on average 1.0666666666666667) 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:18,323 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 47 states, 45 states have (on average 1.0666666666666667) 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:18,324 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:18,324 INFO L93 Difference]: Finished difference Result 50 states and 51 transitions. [2022-02-20 23:41:18,324 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 51 transitions. [2022-02-20 23:41:18,324 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:18,324 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:18,324 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 45 states have (on average 1.0666666666666667) 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 50 states. [2022-02-20 23:41:18,325 INFO L87 Difference]: Start difference. First operand has 47 states, 45 states have (on average 1.0666666666666667) 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 50 states. [2022-02-20 23:41:18,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:18,325 INFO L93 Difference]: Finished difference Result 50 states and 51 transitions. [2022-02-20 23:41:18,325 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 51 transitions. [2022-02-20 23:41:18,325 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:18,325 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:18,326 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:18,326 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:18,326 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 45 states have (on average 1.0666666666666667) 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:18,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 48 transitions. [2022-02-20 23:41:18,326 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 48 transitions. Word has length 38 [2022-02-20 23:41:18,326 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:18,327 INFO L470 AbstractCegarLoop]: Abstraction has 47 states and 48 transitions. [2022-02-20 23:41:18,327 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 28 states have (on average 3.1785714285714284) internal successors, (89), 28 states have internal predecessors, (89), 0 states have call successors, (0), 0 states have call 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:18,327 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 48 transitions. [2022-02-20 23:41:18,329 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 23:41:18,329 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:18,329 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:18,345 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:41:18,535 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,SelfDestructingSolverStorable23 [2022-02-20 23:41:18,536 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:18,536 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:18,536 INFO L85 PathProgramCache]: Analyzing trace with hash -452353921, now seen corresponding path program 5 times [2022-02-20 23:41:18,536 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:18,537 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1778462980] [2022-02-20 23:41:18,537 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:18,537 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:18,568 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:18,725 INFO L290 TraceCheckUtils]: 0: Hoare triple {5280#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5280#true} is VALID [2022-02-20 23:41:18,725 INFO L290 TraceCheckUtils]: 1: Hoare triple {5280#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {5280#true} is VALID [2022-02-20 23:41:18,725 INFO L290 TraceCheckUtils]: 2: Hoare triple {5280#true} assume !(main_~length1~0#1 < 1); {5280#true} is VALID [2022-02-20 23:41:18,725 INFO L290 TraceCheckUtils]: 3: Hoare triple {5280#true} assume !(main_~length2~0#1 < 1); {5280#true} is VALID [2022-02-20 23:41:18,726 INFO L290 TraceCheckUtils]: 4: Hoare triple {5280#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {5282#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:18,727 INFO L290 TraceCheckUtils]: 5: Hoare triple {5282#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5282#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:18,727 INFO L290 TraceCheckUtils]: 6: Hoare triple {5282#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5282#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:18,727 INFO L290 TraceCheckUtils]: 7: Hoare triple {5282#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {5282#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:18,730 INFO L290 TraceCheckUtils]: 8: Hoare triple {5282#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5283#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,730 INFO L290 TraceCheckUtils]: 9: Hoare triple {5283#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5283#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,731 INFO L290 TraceCheckUtils]: 10: Hoare triple {5283#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5283#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,731 INFO L290 TraceCheckUtils]: 11: Hoare triple {5283#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {5283#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,732 INFO L290 TraceCheckUtils]: 12: Hoare triple {5283#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5284#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,732 INFO L290 TraceCheckUtils]: 13: Hoare triple {5284#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5284#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,732 INFO L290 TraceCheckUtils]: 14: Hoare triple {5284#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5284#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,733 INFO L290 TraceCheckUtils]: 15: Hoare triple {5284#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {5284#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,733 INFO L290 TraceCheckUtils]: 16: Hoare triple {5284#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5285#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:18,734 INFO L290 TraceCheckUtils]: 17: Hoare triple {5285#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:18,734 INFO L290 TraceCheckUtils]: 18: Hoare triple {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:18,734 INFO L290 TraceCheckUtils]: 19: Hoare triple {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:18,735 INFO L290 TraceCheckUtils]: 20: Hoare triple {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:18,735 INFO L290 TraceCheckUtils]: 21: Hoare triple {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:18,736 INFO L290 TraceCheckUtils]: 22: Hoare triple {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:18,736 INFO L290 TraceCheckUtils]: 23: Hoare triple {5286#(and (<= 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,736 INFO L290 TraceCheckUtils]: 24: Hoare triple {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,737 INFO L290 TraceCheckUtils]: 25: Hoare triple {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,737 INFO L290 TraceCheckUtils]: 26: Hoare triple {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,738 INFO L290 TraceCheckUtils]: 27: Hoare triple {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5288#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:18,738 INFO L290 TraceCheckUtils]: 28: Hoare triple {5288#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5288#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:18,738 INFO L290 TraceCheckUtils]: 29: Hoare triple {5288#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5288#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:18,739 INFO L290 TraceCheckUtils]: 30: Hoare triple {5288#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5288#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:18,739 INFO L290 TraceCheckUtils]: 31: Hoare triple {5288#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5289#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,740 INFO L290 TraceCheckUtils]: 32: Hoare triple {5289#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5289#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,740 INFO L290 TraceCheckUtils]: 33: Hoare triple {5289#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5289#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,740 INFO L290 TraceCheckUtils]: 34: Hoare triple {5289#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5289#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,741 INFO L290 TraceCheckUtils]: 35: Hoare triple {5289#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5290#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,741 INFO L290 TraceCheckUtils]: 36: Hoare triple {5290#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5290#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,742 INFO L290 TraceCheckUtils]: 37: Hoare triple {5290#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5290#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,742 INFO L290 TraceCheckUtils]: 38: Hoare triple {5290#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5290#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:18,743 INFO L290 TraceCheckUtils]: 39: Hoare triple {5290#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5291#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:18,743 INFO L290 TraceCheckUtils]: 40: Hoare triple {5291#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5291#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:18,743 INFO L290 TraceCheckUtils]: 41: Hoare triple {5291#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {5281#false} is VALID [2022-02-20 23:41:18,744 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 6 proven. 54 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:18,744 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:18,744 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1778462980] [2022-02-20 23:41:18,744 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1778462980] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:18,744 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1758459660] [2022-02-20 23:41:18,744 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 23:41:18,744 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:18,744 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:18,745 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:41:18,746 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:41:18,845 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2022-02-20 23:41:18,846 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:18,847 INFO L263 TraceCheckSpWp]: Trace formula consists of 235 conjuncts, 48 conjunts are in the unsatisfiable core [2022-02-20 23:41:18,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:18,871 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:18,973 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:41:18,974 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 11 [2022-02-20 23:41:18,981 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 10 treesize of output 8 [2022-02-20 23:41:19,454 INFO L290 TraceCheckUtils]: 0: Hoare triple {5280#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5280#true} is VALID [2022-02-20 23:41:19,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {5280#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {5280#true} is VALID [2022-02-20 23:41:19,454 INFO L290 TraceCheckUtils]: 2: Hoare triple {5280#true} assume !(main_~length1~0#1 < 1); {5280#true} is VALID [2022-02-20 23:41:19,454 INFO L290 TraceCheckUtils]: 3: Hoare triple {5280#true} assume !(main_~length2~0#1 < 1); {5280#true} is VALID [2022-02-20 23:41:19,455 INFO L290 TraceCheckUtils]: 4: Hoare triple {5280#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {5307#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,456 INFO L290 TraceCheckUtils]: 5: Hoare triple {5307#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5307#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,456 INFO L290 TraceCheckUtils]: 6: Hoare triple {5307#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5307#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,457 INFO L290 TraceCheckUtils]: 7: Hoare triple {5307#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5307#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,457 INFO L290 TraceCheckUtils]: 8: Hoare triple {5307#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5320#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,457 INFO L290 TraceCheckUtils]: 9: Hoare triple {5320#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5320#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,458 INFO L290 TraceCheckUtils]: 10: Hoare triple {5320#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5320#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,458 INFO L290 TraceCheckUtils]: 11: Hoare triple {5320#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5320#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {5320#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5333#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,459 INFO L290 TraceCheckUtils]: 13: Hoare triple {5333#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5333#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,460 INFO L290 TraceCheckUtils]: 14: Hoare triple {5333#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5333#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,460 INFO L290 TraceCheckUtils]: 15: Hoare triple {5333#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5333#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,460 INFO L290 TraceCheckUtils]: 16: Hoare triple {5333#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5346#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,461 INFO L290 TraceCheckUtils]: 17: Hoare triple {5346#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,461 INFO L290 TraceCheckUtils]: 18: Hoare triple {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,462 INFO L290 TraceCheckUtils]: 19: Hoare triple {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,462 INFO L290 TraceCheckUtils]: 20: Hoare triple {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,462 INFO L290 TraceCheckUtils]: 21: Hoare triple {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,463 INFO L290 TraceCheckUtils]: 22: Hoare triple {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:19,463 INFO L290 TraceCheckUtils]: 23: Hoare triple {5350#(and (< 4 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {5369#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,464 INFO L290 TraceCheckUtils]: 24: Hoare triple {5369#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5369#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,464 INFO L290 TraceCheckUtils]: 25: Hoare triple {5369#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 4 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,465 INFO L290 TraceCheckUtils]: 26: Hoare triple {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,465 INFO L290 TraceCheckUtils]: 27: Hoare triple {5287#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5382#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,465 INFO L290 TraceCheckUtils]: 28: Hoare triple {5382#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5382#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,466 INFO L290 TraceCheckUtils]: 29: Hoare triple {5382#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5382#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,466 INFO L290 TraceCheckUtils]: 30: Hoare triple {5382#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5382#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,467 INFO L290 TraceCheckUtils]: 31: Hoare triple {5382#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5395#(and (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,467 INFO L290 TraceCheckUtils]: 32: Hoare triple {5395#(and (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5395#(and (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,467 INFO L290 TraceCheckUtils]: 33: Hoare triple {5395#(and (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5395#(and (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,468 INFO L290 TraceCheckUtils]: 34: Hoare triple {5395#(and (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5395#(and (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,468 INFO L290 TraceCheckUtils]: 35: Hoare triple {5395#(and (= (+ (- 2) |ULTIMATE.start_cstrcpy_~to#1.offset|) 0) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5408#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,469 INFO L290 TraceCheckUtils]: 36: Hoare triple {5408#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5408#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,469 INFO L290 TraceCheckUtils]: 37: Hoare triple {5408#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5408#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,469 INFO L290 TraceCheckUtils]: 38: Hoare triple {5408#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5408#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,470 INFO L290 TraceCheckUtils]: 39: Hoare triple {5408#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5421#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,470 INFO L290 TraceCheckUtils]: 40: Hoare triple {5421#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5421#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:19,471 INFO L290 TraceCheckUtils]: 41: Hoare triple {5421#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {5281#false} is VALID [2022-02-20 23:41:19,471 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 15 proven. 45 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:19,471 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:20,250 INFO L290 TraceCheckUtils]: 41: Hoare triple {5428#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {5281#false} is VALID [2022-02-20 23:41:20,251 INFO L290 TraceCheckUtils]: 40: Hoare triple {5428#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5428#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:20,252 INFO L290 TraceCheckUtils]: 39: Hoare triple {5435#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5428#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:20,252 INFO L290 TraceCheckUtils]: 38: Hoare triple {5435#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5435#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,252 INFO L290 TraceCheckUtils]: 37: Hoare triple {5435#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5435#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,253 INFO L290 TraceCheckUtils]: 36: Hoare triple {5435#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5435#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,254 INFO L290 TraceCheckUtils]: 35: Hoare triple {5448#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5435#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,254 INFO L290 TraceCheckUtils]: 34: Hoare triple {5448#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5448#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,255 INFO L290 TraceCheckUtils]: 33: Hoare triple {5448#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5448#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,255 INFO L290 TraceCheckUtils]: 32: Hoare triple {5448#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5448#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,256 INFO L290 TraceCheckUtils]: 31: Hoare triple {5461#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5448#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,256 INFO L290 TraceCheckUtils]: 30: Hoare triple {5461#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5461#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,257 INFO L290 TraceCheckUtils]: 29: Hoare triple {5461#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5461#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,257 INFO L290 TraceCheckUtils]: 28: Hoare triple {5461#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5461#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,258 INFO L290 TraceCheckUtils]: 27: Hoare triple {5474#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5461#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,258 INFO L290 TraceCheckUtils]: 26: Hoare triple {5474#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5474#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,259 INFO L290 TraceCheckUtils]: 25: Hoare triple {5481#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5474#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,260 INFO L290 TraceCheckUtils]: 24: Hoare triple {5481#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5481#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,261 INFO L290 TraceCheckUtils]: 23: Hoare triple {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {5481#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:20,261 INFO L290 TraceCheckUtils]: 22: Hoare triple {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,262 INFO L290 TraceCheckUtils]: 21: Hoare triple {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,262 INFO L290 TraceCheckUtils]: 20: Hoare triple {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,262 INFO L290 TraceCheckUtils]: 19: Hoare triple {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,263 INFO L290 TraceCheckUtils]: 18: Hoare triple {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,264 INFO L290 TraceCheckUtils]: 17: Hoare triple {5507#(or (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5488#(or (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,264 INFO L290 TraceCheckUtils]: 16: Hoare triple {5511#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5507#(or (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,265 INFO L290 TraceCheckUtils]: 15: Hoare triple {5511#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5511#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,265 INFO L290 TraceCheckUtils]: 14: Hoare triple {5511#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5511#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,266 INFO L290 TraceCheckUtils]: 13: Hoare triple {5511#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5511#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,266 INFO L290 TraceCheckUtils]: 12: Hoare triple {5524#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5511#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,267 INFO L290 TraceCheckUtils]: 11: Hoare triple {5524#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5524#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,267 INFO L290 TraceCheckUtils]: 10: Hoare triple {5524#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5524#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,268 INFO L290 TraceCheckUtils]: 9: Hoare triple {5524#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5524#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,268 INFO L290 TraceCheckUtils]: 8: Hoare triple {5537#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5524#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,269 INFO L290 TraceCheckUtils]: 7: Hoare triple {5537#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {5537#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,269 INFO L290 TraceCheckUtils]: 6: Hoare triple {5537#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5537#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,269 INFO L290 TraceCheckUtils]: 5: Hoare triple {5537#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5537#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,270 INFO L290 TraceCheckUtils]: 4: Hoare triple {5280#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {5537#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (<= (+ 5 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:20,270 INFO L290 TraceCheckUtils]: 3: Hoare triple {5280#true} assume !(main_~length2~0#1 < 1); {5280#true} is VALID [2022-02-20 23:41:20,271 INFO L290 TraceCheckUtils]: 2: Hoare triple {5280#true} assume !(main_~length1~0#1 < 1); {5280#true} is VALID [2022-02-20 23:41:20,271 INFO L290 TraceCheckUtils]: 1: Hoare triple {5280#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {5280#true} is VALID [2022-02-20 23:41:20,271 INFO L290 TraceCheckUtils]: 0: Hoare triple {5280#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5280#true} is VALID [2022-02-20 23:41:20,271 INFO L134 CoverageAnalysis]: Checked inductivity of 60 backedges. 28 proven. 32 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:20,271 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1758459660] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:20,271 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:20,271 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 12, 12] total 32 [2022-02-20 23:41:20,272 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [471551126] [2022-02-20 23:41:20,272 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:20,272 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 3.65625) internal successors, (117), 33 states have internal predecessors, (117), 0 states have call successors, (0), 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 42 [2022-02-20 23:41:20,272 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:20,273 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 33 states, 32 states have (on average 3.65625) internal successors, (117), 33 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:20,362 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:20,362 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-02-20 23:41:20,362 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:20,362 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-02-20 23:41:20,362 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=147, Invalid=909, Unknown=0, NotChecked=0, Total=1056 [2022-02-20 23:41:20,363 INFO L87 Difference]: Start difference. First operand 47 states and 48 transitions. Second operand has 33 states, 32 states have (on average 3.65625) internal successors, (117), 33 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:21,405 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:21,406 INFO L93 Difference]: Finished difference Result 50 states and 51 transitions. [2022-02-20 23:41:21,406 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:41:21,406 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 32 states have (on average 3.65625) internal successors, (117), 33 states have internal predecessors, (117), 0 states have call successors, (0), 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 42 [2022-02-20 23:41:21,406 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:21,406 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 32 states have (on average 3.65625) internal successors, (117), 33 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:21,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 52 transitions. [2022-02-20 23:41:21,407 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 32 states have (on average 3.65625) internal successors, (117), 33 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:21,407 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 52 transitions. [2022-02-20 23:41:21,407 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 52 transitions. [2022-02-20 23:41:21,445 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:21,445 INFO L225 Difference]: With dead ends: 50 [2022-02-20 23:41:21,445 INFO L226 Difference]: Without dead ends: 50 [2022-02-20 23:41:21,446 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 61 SyntacticMatches, 1 SemanticMatches, 41 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 317 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=351, Invalid=1455, Unknown=0, NotChecked=0, Total=1806 [2022-02-20 23:41:21,446 INFO L933 BasicCegarLoop]: 14 mSDtfsCounter, 162 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 370 mSolverCounterSat, 47 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 162 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 417 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 47 IncrementalHoareTripleChecker+Valid, 370 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:21,446 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [162 Valid, 143 Invalid, 417 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [47 Valid, 370 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:41:21,447 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-02-20 23:41:21,447 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 48. [2022-02-20 23:41:21,447 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:21,447 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 48 states, 46 states have (on average 1.065217391304348) internal successors, (49), 47 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call 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:21,448 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 48 states, 46 states have (on average 1.065217391304348) internal successors, (49), 47 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call 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:21,448 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 48 states, 46 states have (on average 1.065217391304348) internal successors, (49), 47 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call 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:21,448 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:21,448 INFO L93 Difference]: Finished difference Result 50 states and 51 transitions. [2022-02-20 23:41:21,449 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 51 transitions. [2022-02-20 23:41:21,449 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:21,449 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:21,449 INFO L74 IsIncluded]: Start isIncluded. First operand has 48 states, 46 states have (on average 1.065217391304348) internal successors, (49), 47 states have internal predecessors, (49), 0 states have call successors, (0), 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 50 states. [2022-02-20 23:41:21,449 INFO L87 Difference]: Start difference. First operand has 48 states, 46 states have (on average 1.065217391304348) internal successors, (49), 47 states have internal predecessors, (49), 0 states have call successors, (0), 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 50 states. [2022-02-20 23:41:21,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:21,450 INFO L93 Difference]: Finished difference Result 50 states and 51 transitions. [2022-02-20 23:41:21,450 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 51 transitions. [2022-02-20 23:41:21,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:21,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:21,450 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:21,450 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:21,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 46 states have (on average 1.065217391304348) internal successors, (49), 47 states have internal predecessors, (49), 0 states have call successors, (0), 0 states have call 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:21,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 49 transitions. [2022-02-20 23:41:21,454 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 49 transitions. Word has length 42 [2022-02-20 23:41:21,455 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:21,455 INFO L470 AbstractCegarLoop]: Abstraction has 48 states and 49 transitions. [2022-02-20 23:41:21,455 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 32 states have (on average 3.65625) internal successors, (117), 33 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:21,455 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 49 transitions. [2022-02-20 23:41:21,455 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-02-20 23:41:21,455 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:21,455 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:21,474 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Ended with exit code 0 [2022-02-20 23:41:21,656 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-02-20 23:41:21,656 INFO L402 AbstractCegarLoop]: === Iteration 26 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:21,656 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:21,656 INFO L85 PathProgramCache]: Analyzing trace with hash 1531708431, now seen corresponding path program 5 times [2022-02-20 23:41:21,657 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:21,657 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1394286552] [2022-02-20 23:41:21,657 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:21,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:21,709 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:21,929 INFO L290 TraceCheckUtils]: 0: Hoare triple {5779#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5779#true} is VALID [2022-02-20 23:41:21,929 INFO L290 TraceCheckUtils]: 1: Hoare triple {5779#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {5779#true} is VALID [2022-02-20 23:41:21,930 INFO L290 TraceCheckUtils]: 2: Hoare triple {5779#true} assume !(main_~length1~0#1 < 1); {5779#true} is VALID [2022-02-20 23:41:21,930 INFO L290 TraceCheckUtils]: 3: Hoare triple {5779#true} assume !(main_~length2~0#1 < 1); {5779#true} is VALID [2022-02-20 23:41:21,931 INFO L290 TraceCheckUtils]: 4: Hoare triple {5779#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {5781#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:21,932 INFO L290 TraceCheckUtils]: 5: Hoare triple {5781#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5781#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:21,932 INFO L290 TraceCheckUtils]: 6: Hoare triple {5781#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5781#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:21,932 INFO L290 TraceCheckUtils]: 7: Hoare triple {5781#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {5781#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:21,933 INFO L290 TraceCheckUtils]: 8: Hoare triple {5781#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5782#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:21,933 INFO L290 TraceCheckUtils]: 9: Hoare triple {5782#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5782#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:21,934 INFO L290 TraceCheckUtils]: 10: Hoare triple {5782#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5782#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:21,934 INFO L290 TraceCheckUtils]: 11: Hoare triple {5782#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet10#1; {5782#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:21,935 INFO L290 TraceCheckUtils]: 12: Hoare triple {5782#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5783#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:21,935 INFO L290 TraceCheckUtils]: 13: Hoare triple {5783#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5783#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:21,936 INFO L290 TraceCheckUtils]: 14: Hoare triple {5783#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5783#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:21,936 INFO L290 TraceCheckUtils]: 15: Hoare triple {5783#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {5783#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:21,936 INFO L290 TraceCheckUtils]: 16: Hoare triple {5783#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5784#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:21,937 INFO L290 TraceCheckUtils]: 17: Hoare triple {5784#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5785#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:21,937 INFO L290 TraceCheckUtils]: 18: Hoare triple {5785#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5785#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:21,938 INFO L290 TraceCheckUtils]: 19: Hoare triple {5785#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {5785#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:21,938 INFO L290 TraceCheckUtils]: 20: Hoare triple {5785#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5786#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:21,939 INFO L290 TraceCheckUtils]: 21: Hoare triple {5786#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {5787#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:21,939 INFO L290 TraceCheckUtils]: 22: Hoare triple {5787#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {5788#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:21,940 INFO L290 TraceCheckUtils]: 23: Hoare triple {5788#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {5789#(and (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:21,940 INFO L290 TraceCheckUtils]: 24: Hoare triple {5789#(and (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5789#(and (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:21,941 INFO L290 TraceCheckUtils]: 25: Hoare triple {5789#(and (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5789#(and (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:21,941 INFO L290 TraceCheckUtils]: 26: Hoare triple {5789#(and (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5789#(and (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:21,942 INFO L290 TraceCheckUtils]: 27: Hoare triple {5789#(and (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 4)) (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:21,942 INFO L290 TraceCheckUtils]: 28: Hoare triple {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:21,943 INFO L290 TraceCheckUtils]: 29: Hoare triple {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:21,943 INFO L290 TraceCheckUtils]: 30: Hoare triple {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:21,943 INFO L290 TraceCheckUtils]: 31: Hoare triple {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:21,944 INFO L290 TraceCheckUtils]: 32: Hoare triple {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:21,944 INFO L290 TraceCheckUtils]: 33: Hoare triple {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:21,945 INFO L290 TraceCheckUtils]: 34: Hoare triple {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:21,945 INFO L290 TraceCheckUtils]: 35: Hoare triple {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:21,946 INFO L290 TraceCheckUtils]: 36: Hoare triple {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:21,946 INFO L290 TraceCheckUtils]: 37: Hoare triple {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:21,947 INFO L290 TraceCheckUtils]: 38: Hoare triple {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:21,947 INFO L290 TraceCheckUtils]: 39: Hoare triple {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5793#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:21,948 INFO L290 TraceCheckUtils]: 40: Hoare triple {5793#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:21,948 INFO L290 TraceCheckUtils]: 41: Hoare triple {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:21,948 INFO L290 TraceCheckUtils]: 42: Hoare triple {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5780#false} is VALID [2022-02-20 23:41:21,948 INFO L290 TraceCheckUtils]: 43: Hoare triple {5780#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5780#false} is VALID [2022-02-20 23:41:21,948 INFO L290 TraceCheckUtils]: 44: Hoare triple {5780#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {5780#false} is VALID [2022-02-20 23:41:21,948 INFO L134 CoverageAnalysis]: Checked inductivity of 73 backedges. 9 proven. 64 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:21,948 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:21,949 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1394286552] [2022-02-20 23:41:21,949 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1394286552] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:21,949 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [966679617] [2022-02-20 23:41:21,949 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 23:41:21,949 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:21,949 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:21,950 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:41:21,950 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:41:22,083 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 6 check-sat command(s) [2022-02-20 23:41:22,083 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:22,085 INFO L263 TraceCheckSpWp]: Trace formula consists of 252 conjuncts, 64 conjunts are in the unsatisfiable core [2022-02-20 23:41:22,097 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:22,098 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:22,113 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 10 treesize of output 8 [2022-02-20 23:41:22,376 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:22,645 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 19 [2022-02-20 23:41:22,833 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:22,865 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:22,911 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:22,957 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:22,967 INFO L290 TraceCheckUtils]: 0: Hoare triple {5779#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5779#true} is VALID [2022-02-20 23:41:22,967 INFO L290 TraceCheckUtils]: 1: Hoare triple {5779#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {5779#true} is VALID [2022-02-20 23:41:22,969 INFO L290 TraceCheckUtils]: 2: Hoare triple {5779#true} assume !(main_~length1~0#1 < 1); {5779#true} is VALID [2022-02-20 23:41:22,969 INFO L290 TraceCheckUtils]: 3: Hoare triple {5779#true} assume !(main_~length2~0#1 < 1); {5779#true} is VALID [2022-02-20 23:41:22,969 INFO L290 TraceCheckUtils]: 4: Hoare triple {5779#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,970 INFO L290 TraceCheckUtils]: 5: Hoare triple {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,970 INFO L290 TraceCheckUtils]: 6: Hoare triple {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,971 INFO L290 TraceCheckUtils]: 7: Hoare triple {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,971 INFO L290 TraceCheckUtils]: 8: Hoare triple {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,971 INFO L290 TraceCheckUtils]: 9: Hoare triple {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,972 INFO L290 TraceCheckUtils]: 10: Hoare triple {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,972 INFO L290 TraceCheckUtils]: 11: Hoare triple {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,973 INFO L290 TraceCheckUtils]: 12: Hoare triple {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:22,973 INFO L290 TraceCheckUtils]: 13: Hoare triple {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:22,973 INFO L290 TraceCheckUtils]: 14: Hoare triple {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:22,974 INFO L290 TraceCheckUtils]: 15: Hoare triple {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet10#1; {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:22,974 INFO L290 TraceCheckUtils]: 16: Hoare triple {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5849#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,975 INFO L290 TraceCheckUtils]: 17: Hoare triple {5849#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5853#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:22,976 INFO L290 TraceCheckUtils]: 18: Hoare triple {5853#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5853#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:22,976 INFO L290 TraceCheckUtils]: 19: Hoare triple {5853#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {5853#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:22,977 INFO L290 TraceCheckUtils]: 20: Hoare triple {5853#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5863#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4))} is VALID [2022-02-20 23:41:22,977 INFO L290 TraceCheckUtils]: 21: Hoare triple {5863#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {5867#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:22,978 INFO L290 TraceCheckUtils]: 22: Hoare triple {5867#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {5871#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:22,981 INFO L290 TraceCheckUtils]: 23: Hoare triple {5871#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {5875#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:22,983 INFO L290 TraceCheckUtils]: 24: Hoare triple {5875#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5875#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:22,984 INFO L290 TraceCheckUtils]: 25: Hoare triple {5875#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5875#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:22,985 INFO L290 TraceCheckUtils]: 26: Hoare triple {5875#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5875#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:22,985 INFO L290 TraceCheckUtils]: 27: Hoare triple {5875#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:22,986 INFO L290 TraceCheckUtils]: 28: Hoare triple {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:22,995 INFO L290 TraceCheckUtils]: 29: Hoare triple {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:22,996 INFO L290 TraceCheckUtils]: 30: Hoare triple {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:22,997 INFO L290 TraceCheckUtils]: 31: Hoare triple {5790#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:22,997 INFO L290 TraceCheckUtils]: 32: Hoare triple {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:22,998 INFO L290 TraceCheckUtils]: 33: Hoare triple {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:22,998 INFO L290 TraceCheckUtils]: 34: Hoare triple {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:22,999 INFO L290 TraceCheckUtils]: 35: Hoare triple {5791#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:22,999 INFO L290 TraceCheckUtils]: 36: Hoare triple {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:23,000 INFO L290 TraceCheckUtils]: 37: Hoare triple {5792#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5918#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:23,000 INFO L290 TraceCheckUtils]: 38: Hoare triple {5918#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5918#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:23,001 INFO L290 TraceCheckUtils]: 39: Hoare triple {5918#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5793#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:23,001 INFO L290 TraceCheckUtils]: 40: Hoare triple {5793#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:23,001 INFO L290 TraceCheckUtils]: 41: Hoare triple {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:23,002 INFO L290 TraceCheckUtils]: 42: Hoare triple {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5780#false} is VALID [2022-02-20 23:41:23,002 INFO L290 TraceCheckUtils]: 43: Hoare triple {5780#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5780#false} is VALID [2022-02-20 23:41:23,002 INFO L290 TraceCheckUtils]: 44: Hoare triple {5780#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {5780#false} is VALID [2022-02-20 23:41:23,002 INFO L134 CoverageAnalysis]: Checked inductivity of 73 backedges. 9 proven. 64 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:23,002 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:23,029 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) is different from false [2022-02-20 23:41:23,039 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) is different from false [2022-02-20 23:41:23,056 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) is different from false [2022-02-20 23:41:23,073 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)) is different from false [2022-02-20 23:41:23,090 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_500) |c_ULTIMATE.start_main_~nondetString~0#1.base|) (+ |c_ULTIMATE.start_main_~nondetString~0#1.offset| 4)) 0)) is different from false [2022-02-20 23:41:23,102 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:23,102 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:41:23,110 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:23,111 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 37 treesize of output 37 [2022-02-20 23:41:23,114 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 11 treesize of output 7 [2022-02-20 23:41:23,442 INFO L290 TraceCheckUtils]: 44: Hoare triple {5780#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {5780#false} is VALID [2022-02-20 23:41:23,442 INFO L290 TraceCheckUtils]: 43: Hoare triple {5780#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5780#false} is VALID [2022-02-20 23:41:23,443 INFO L290 TraceCheckUtils]: 42: Hoare triple {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5780#false} is VALID [2022-02-20 23:41:23,443 INFO L290 TraceCheckUtils]: 41: Hoare triple {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:23,443 INFO L290 TraceCheckUtils]: 40: Hoare triple {5793#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5794#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:23,444 INFO L290 TraceCheckUtils]: 39: Hoare triple {5918#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5793#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:23,444 INFO L290 TraceCheckUtils]: 38: Hoare triple {5918#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5918#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:23,445 INFO L290 TraceCheckUtils]: 37: Hoare triple {5961#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5918#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:23,445 INFO L290 TraceCheckUtils]: 36: Hoare triple {5961#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5961#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:23,446 INFO L290 TraceCheckUtils]: 35: Hoare triple {5968#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5961#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:23,446 INFO L290 TraceCheckUtils]: 34: Hoare triple {5968#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5968#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:23,451 WARN L290 TraceCheckUtils]: 33: Hoare triple {5968#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5968#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is UNKNOWN [2022-02-20 23:41:23,451 INFO L290 TraceCheckUtils]: 32: Hoare triple {5968#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5968#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:23,452 INFO L290 TraceCheckUtils]: 31: Hoare triple {5981#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5968#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:23,452 INFO L290 TraceCheckUtils]: 30: Hoare triple {5981#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5981#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:23,454 WARN L290 TraceCheckUtils]: 29: Hoare triple {5981#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5981#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is UNKNOWN [2022-02-20 23:41:23,454 INFO L290 TraceCheckUtils]: 28: Hoare triple {5981#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5981#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:23,455 INFO L290 TraceCheckUtils]: 27: Hoare triple {5994#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {5981#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:23,455 INFO L290 TraceCheckUtils]: 26: Hoare triple {5994#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {5994#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:23,456 INFO L290 TraceCheckUtils]: 25: Hoare triple {5994#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {5994#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:23,457 INFO L290 TraceCheckUtils]: 24: Hoare triple {5994#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {5994#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:23,457 INFO L290 TraceCheckUtils]: 23: Hoare triple {6007#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_500) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {5994#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_500) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:23,458 INFO L290 TraceCheckUtils]: 22: Hoare triple {5867#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {6007#(forall ((v_ArrVal_500 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_500) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:23,458 INFO L290 TraceCheckUtils]: 21: Hoare triple {6014#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {5867#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:23,459 INFO L290 TraceCheckUtils]: 20: Hoare triple {6018#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6014#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:23,460 INFO L290 TraceCheckUtils]: 19: Hoare triple {6018#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|)))} havoc main_#t~nondet10#1; {6018#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:23,460 INFO L290 TraceCheckUtils]: 18: Hoare triple {6018#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6018#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:23,461 INFO L290 TraceCheckUtils]: 17: Hoare triple {5849#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6018#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< 4 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:23,461 INFO L290 TraceCheckUtils]: 16: Hoare triple {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5849#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,462 INFO L290 TraceCheckUtils]: 15: Hoare triple {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet10#1; {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:23,462 INFO L290 TraceCheckUtils]: 14: Hoare triple {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:23,463 INFO L290 TraceCheckUtils]: 13: Hoare triple {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:23,463 INFO L290 TraceCheckUtils]: 12: Hoare triple {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5836#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 0 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:23,463 INFO L290 TraceCheckUtils]: 11: Hoare triple {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,464 INFO L290 TraceCheckUtils]: 10: Hoare triple {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,465 INFO L290 TraceCheckUtils]: 9: Hoare triple {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,465 INFO L290 TraceCheckUtils]: 8: Hoare triple {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {5823#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,465 INFO L290 TraceCheckUtils]: 7: Hoare triple {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,466 INFO L290 TraceCheckUtils]: 6: Hoare triple {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,467 INFO L290 TraceCheckUtils]: 4: Hoare triple {5779#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {5810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:23,467 INFO L290 TraceCheckUtils]: 3: Hoare triple {5779#true} assume !(main_~length2~0#1 < 1); {5779#true} is VALID [2022-02-20 23:41:23,467 INFO L290 TraceCheckUtils]: 2: Hoare triple {5779#true} assume !(main_~length1~0#1 < 1); {5779#true} is VALID [2022-02-20 23:41:23,467 INFO L290 TraceCheckUtils]: 1: Hoare triple {5779#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {5779#true} is VALID [2022-02-20 23:41:23,467 INFO L290 TraceCheckUtils]: 0: Hoare triple {5779#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5779#true} is VALID [2022-02-20 23:41:23,468 INFO L134 CoverageAnalysis]: Checked inductivity of 73 backedges. 9 proven. 29 refuted. 0 times theorem prover too weak. 0 trivial. 35 not checked. [2022-02-20 23:41:23,468 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [966679617] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:23,468 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:23,468 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 17, 17] total 33 [2022-02-20 23:41:23,468 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1650389499] [2022-02-20 23:41:23,468 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:23,469 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 33 states have (on average 2.8181818181818183) internal successors, (93), 33 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 45 [2022-02-20 23:41:23,469 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:23,469 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 33 states, 33 states have (on average 2.8181818181818183) internal successors, (93), 33 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:23,540 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 90 inductive. 0 not inductive. 3 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:23,540 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 33 states [2022-02-20 23:41:23,540 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:23,541 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 33 interpolants. [2022-02-20 23:41:23,541 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=87, Invalid=684, Unknown=5, NotChecked=280, Total=1056 [2022-02-20 23:41:23,541 INFO L87 Difference]: Start difference. First operand 48 states and 49 transitions. Second operand has 33 states, 33 states have (on average 2.8181818181818183) internal successors, (93), 33 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:24,433 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:24,433 INFO L93 Difference]: Finished difference Result 76 states and 77 transitions. [2022-02-20 23:41:24,434 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-02-20 23:41:24,434 INFO L78 Accepts]: Start accepts. Automaton has has 33 states, 33 states have (on average 2.8181818181818183) internal successors, (93), 33 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 45 [2022-02-20 23:41:24,434 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:24,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 33 states have (on average 2.8181818181818183) internal successors, (93), 33 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:24,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 60 transitions. [2022-02-20 23:41:24,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 33 states, 33 states have (on average 2.8181818181818183) internal successors, (93), 33 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:24,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 60 transitions. [2022-02-20 23:41:24,435 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states and 60 transitions. [2022-02-20 23:41:24,483 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:24,484 INFO L225 Difference]: With dead ends: 76 [2022-02-20 23:41:24,484 INFO L226 Difference]: Without dead ends: 55 [2022-02-20 23:41:24,484 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 119 GetRequests, 73 SyntacticMatches, 8 SemanticMatches, 38 ConstructedPredicates, 5 IntricatePredicates, 0 DeprecatedPredicates, 173 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=135, Invalid=1070, Unknown=5, NotChecked=350, Total=1560 [2022-02-20 23:41:24,484 INFO L933 BasicCegarLoop]: 15 mSDtfsCounter, 38 mSDsluCounter, 222 mSDsCounter, 0 mSdLazyCounter, 435 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 38 SdHoareTripleChecker+Valid, 237 SdHoareTripleChecker+Invalid, 679 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 435 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 234 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:24,485 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [38 Valid, 237 Invalid, 679 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 435 Invalid, 0 Unknown, 234 Unchecked, 0.3s Time] [2022-02-20 23:41:24,485 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-02-20 23:41:24,485 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 52. [2022-02-20 23:41:24,485 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:24,486 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 52 states, 50 states have (on average 1.06) internal successors, (53), 51 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call 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:24,486 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 52 states, 50 states have (on average 1.06) internal successors, (53), 51 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call 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:24,486 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 52 states, 50 states have (on average 1.06) internal successors, (53), 51 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call 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:24,487 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:24,487 INFO L93 Difference]: Finished difference Result 55 states and 56 transitions. [2022-02-20 23:41:24,487 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 56 transitions. [2022-02-20 23:41:24,487 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:24,487 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:24,487 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 50 states have (on average 1.06) internal successors, (53), 51 states have internal predecessors, (53), 0 states have call successors, (0), 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 55 states. [2022-02-20 23:41:24,487 INFO L87 Difference]: Start difference. First operand has 52 states, 50 states have (on average 1.06) internal successors, (53), 51 states have internal predecessors, (53), 0 states have call successors, (0), 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 55 states. [2022-02-20 23:41:24,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:24,488 INFO L93 Difference]: Finished difference Result 55 states and 56 transitions. [2022-02-20 23:41:24,488 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 56 transitions. [2022-02-20 23:41:24,488 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:24,488 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:24,488 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:24,488 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:24,488 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 50 states have (on average 1.06) internal successors, (53), 51 states have internal predecessors, (53), 0 states have call successors, (0), 0 states have call 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:24,489 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 53 transitions. [2022-02-20 23:41:24,489 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 53 transitions. Word has length 45 [2022-02-20 23:41:24,489 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:24,489 INFO L470 AbstractCegarLoop]: Abstraction has 52 states and 53 transitions. [2022-02-20 23:41:24,489 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 33 states, 33 states have (on average 2.8181818181818183) internal successors, (93), 33 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:24,489 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 53 transitions. [2022-02-20 23:41:24,490 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-02-20 23:41:24,490 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:24,490 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:24,513 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:24,695 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-02-20 23:41:24,695 INFO L402 AbstractCegarLoop]: === Iteration 27 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:24,695 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:24,696 INFO L85 PathProgramCache]: Analyzing trace with hash 801080082, now seen corresponding path program 6 times [2022-02-20 23:41:24,696 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:24,696 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1598334901] [2022-02-20 23:41:24,696 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:24,696 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:24,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:24,890 INFO L290 TraceCheckUtils]: 0: Hoare triple {6334#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6334#true} is VALID [2022-02-20 23:41:24,890 INFO L290 TraceCheckUtils]: 1: Hoare triple {6334#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {6334#true} is VALID [2022-02-20 23:41:24,890 INFO L290 TraceCheckUtils]: 2: Hoare triple {6334#true} assume !(main_~length1~0#1 < 1); {6334#true} is VALID [2022-02-20 23:41:24,890 INFO L290 TraceCheckUtils]: 3: Hoare triple {6334#true} assume !(main_~length2~0#1 < 1); {6334#true} is VALID [2022-02-20 23:41:24,891 INFO L290 TraceCheckUtils]: 4: Hoare triple {6334#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {6336#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,892 INFO L290 TraceCheckUtils]: 5: Hoare triple {6336#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6336#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,892 INFO L290 TraceCheckUtils]: 6: Hoare triple {6336#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6336#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,893 INFO L290 TraceCheckUtils]: 7: Hoare triple {6336#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {6336#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,893 INFO L290 TraceCheckUtils]: 8: Hoare triple {6336#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6337#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:24,894 INFO L290 TraceCheckUtils]: 9: Hoare triple {6337#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6337#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:24,894 INFO L290 TraceCheckUtils]: 10: Hoare triple {6337#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6337#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:24,894 INFO L290 TraceCheckUtils]: 11: Hoare triple {6337#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} havoc main_#t~nondet10#1; {6337#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:24,895 INFO L290 TraceCheckUtils]: 12: Hoare triple {6337#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6338#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,895 INFO L290 TraceCheckUtils]: 13: Hoare triple {6338#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6338#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,896 INFO L290 TraceCheckUtils]: 14: Hoare triple {6338#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6338#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,896 INFO L290 TraceCheckUtils]: 15: Hoare triple {6338#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {6338#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,897 INFO L290 TraceCheckUtils]: 16: Hoare triple {6338#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6339#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,897 INFO L290 TraceCheckUtils]: 17: Hoare triple {6339#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6339#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,898 INFO L290 TraceCheckUtils]: 18: Hoare triple {6339#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6339#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,898 INFO L290 TraceCheckUtils]: 19: Hoare triple {6339#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {6339#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,899 INFO L290 TraceCheckUtils]: 20: Hoare triple {6339#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6340#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:24,899 INFO L290 TraceCheckUtils]: 21: Hoare triple {6340#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,900 INFO L290 TraceCheckUtils]: 22: Hoare triple {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,900 INFO L290 TraceCheckUtils]: 23: Hoare triple {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,900 INFO L290 TraceCheckUtils]: 24: Hoare triple {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,901 INFO L290 TraceCheckUtils]: 25: Hoare triple {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,901 INFO L290 TraceCheckUtils]: 26: Hoare triple {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:24,902 INFO L290 TraceCheckUtils]: 27: Hoare triple {6341#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {6342#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,902 INFO L290 TraceCheckUtils]: 28: Hoare triple {6342#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6342#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,903 INFO L290 TraceCheckUtils]: 29: Hoare triple {6342#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6342#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,903 INFO L290 TraceCheckUtils]: 30: Hoare triple {6342#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6342#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,903 INFO L290 TraceCheckUtils]: 31: Hoare triple {6342#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6343#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:24,904 INFO L290 TraceCheckUtils]: 32: Hoare triple {6343#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6343#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:24,904 INFO L290 TraceCheckUtils]: 33: Hoare triple {6343#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6343#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:24,905 INFO L290 TraceCheckUtils]: 34: Hoare triple {6343#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6343#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:24,905 INFO L290 TraceCheckUtils]: 35: Hoare triple {6343#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6344#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,906 INFO L290 TraceCheckUtils]: 36: Hoare triple {6344#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6344#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,906 INFO L290 TraceCheckUtils]: 37: Hoare triple {6344#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6344#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,907 INFO L290 TraceCheckUtils]: 38: Hoare triple {6344#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6344#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,907 INFO L290 TraceCheckUtils]: 39: Hoare triple {6344#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6345#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:24,908 INFO L290 TraceCheckUtils]: 40: Hoare triple {6345#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6345#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:24,908 INFO L290 TraceCheckUtils]: 41: Hoare triple {6345#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6345#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:24,908 INFO L290 TraceCheckUtils]: 42: Hoare triple {6345#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6345#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:24,909 INFO L290 TraceCheckUtils]: 43: Hoare triple {6345#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6346#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,909 INFO L290 TraceCheckUtils]: 44: Hoare triple {6346#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6346#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,910 INFO L290 TraceCheckUtils]: 45: Hoare triple {6346#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6346#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,910 INFO L290 TraceCheckUtils]: 46: Hoare triple {6346#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6346#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,911 INFO L290 TraceCheckUtils]: 47: Hoare triple {6346#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6347#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:24,911 INFO L290 TraceCheckUtils]: 48: Hoare triple {6347#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {6335#false} is VALID [2022-02-20 23:41:24,911 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 15 proven. 75 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:24,912 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:24,912 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1598334901] [2022-02-20 23:41:24,912 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1598334901] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:24,912 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [9180877] [2022-02-20 23:41:24,912 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-02-20 23:41:24,912 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:24,912 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:24,913 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:41:24,964 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:41:25,056 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-02-20 23:41:25,056 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:25,058 INFO L263 TraceCheckSpWp]: Trace formula consists of 266 conjuncts, 33 conjunts are in the unsatisfiable core [2022-02-20 23:41:25,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:25,072 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:25,527 INFO L290 TraceCheckUtils]: 0: Hoare triple {6334#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6334#true} is VALID [2022-02-20 23:41:25,527 INFO L290 TraceCheckUtils]: 1: Hoare triple {6334#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {6334#true} is VALID [2022-02-20 23:41:25,527 INFO L290 TraceCheckUtils]: 2: Hoare triple {6334#true} assume !(main_~length1~0#1 < 1); {6334#true} is VALID [2022-02-20 23:41:25,528 INFO L290 TraceCheckUtils]: 3: Hoare triple {6334#true} assume !(main_~length2~0#1 < 1); {6334#true} is VALID [2022-02-20 23:41:25,528 INFO L290 TraceCheckUtils]: 4: Hoare triple {6334#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,528 INFO L290 TraceCheckUtils]: 5: Hoare triple {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,529 INFO L290 TraceCheckUtils]: 6: Hoare triple {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,529 INFO L290 TraceCheckUtils]: 7: Hoare triple {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,529 INFO L290 TraceCheckUtils]: 8: Hoare triple {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,529 INFO L290 TraceCheckUtils]: 9: Hoare triple {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,530 INFO L290 TraceCheckUtils]: 10: Hoare triple {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,530 INFO L290 TraceCheckUtils]: 11: Hoare triple {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,530 INFO L290 TraceCheckUtils]: 12: Hoare triple {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,531 INFO L290 TraceCheckUtils]: 13: Hoare triple {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,531 INFO L290 TraceCheckUtils]: 14: Hoare triple {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,531 INFO L290 TraceCheckUtils]: 15: Hoare triple {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,531 INFO L290 TraceCheckUtils]: 16: Hoare triple {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,532 INFO L290 TraceCheckUtils]: 17: Hoare triple {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,532 INFO L290 TraceCheckUtils]: 18: Hoare triple {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,532 INFO L290 TraceCheckUtils]: 19: Hoare triple {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,533 INFO L290 TraceCheckUtils]: 20: Hoare triple {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:25,533 INFO L290 TraceCheckUtils]: 21: Hoare triple {6415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:25,533 INFO L290 TraceCheckUtils]: 22: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:25,533 INFO L290 TraceCheckUtils]: 23: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet10#1; {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:25,534 INFO L290 TraceCheckUtils]: 24: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:25,534 INFO L290 TraceCheckUtils]: 25: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:25,534 INFO L290 TraceCheckUtils]: 26: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {6435#(< (+ 5 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))} is VALID [2022-02-20 23:41:25,535 INFO L290 TraceCheckUtils]: 27: Hoare triple {6435#(< (+ 5 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {6439#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,535 INFO L290 TraceCheckUtils]: 28: Hoare triple {6439#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6439#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,535 INFO L290 TraceCheckUtils]: 29: Hoare triple {6439#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6439#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,536 INFO L290 TraceCheckUtils]: 30: Hoare triple {6439#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6439#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,536 INFO L290 TraceCheckUtils]: 31: Hoare triple {6439#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6452#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,536 INFO L290 TraceCheckUtils]: 32: Hoare triple {6452#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6452#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,537 INFO L290 TraceCheckUtils]: 33: Hoare triple {6452#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6452#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,537 INFO L290 TraceCheckUtils]: 34: Hoare triple {6452#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6452#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,537 INFO L290 TraceCheckUtils]: 35: Hoare triple {6452#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6465#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,538 INFO L290 TraceCheckUtils]: 36: Hoare triple {6465#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6465#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,538 INFO L290 TraceCheckUtils]: 37: Hoare triple {6465#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6465#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,538 INFO L290 TraceCheckUtils]: 38: Hoare triple {6465#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6465#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,539 INFO L290 TraceCheckUtils]: 39: Hoare triple {6465#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6478#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,539 INFO L290 TraceCheckUtils]: 40: Hoare triple {6478#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6478#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,539 INFO L290 TraceCheckUtils]: 41: Hoare triple {6478#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6478#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,540 INFO L290 TraceCheckUtils]: 42: Hoare triple {6478#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6478#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,540 INFO L290 TraceCheckUtils]: 43: Hoare triple {6478#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6491#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:25,541 INFO L290 TraceCheckUtils]: 44: Hoare triple {6491#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6495#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:25,541 INFO L290 TraceCheckUtils]: 45: Hoare triple {6495#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6495#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:25,541 INFO L290 TraceCheckUtils]: 46: Hoare triple {6495#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6495#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:25,542 INFO L290 TraceCheckUtils]: 47: Hoare triple {6495#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6505#(and (< |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:25,542 INFO L290 TraceCheckUtils]: 48: Hoare triple {6505#(and (< |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {6335#false} is VALID [2022-02-20 23:41:25,542 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 28 proven. 62 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:25,543 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:25,989 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 7 treesize of output 5 [2022-02-20 23:41:26,112 INFO L290 TraceCheckUtils]: 48: Hoare triple {6509#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {6335#false} is VALID [2022-02-20 23:41:26,113 INFO L290 TraceCheckUtils]: 47: Hoare triple {6513#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6509#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:26,113 INFO L290 TraceCheckUtils]: 46: Hoare triple {6513#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6513#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:26,114 INFO L290 TraceCheckUtils]: 45: Hoare triple {6513#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6513#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:26,114 INFO L290 TraceCheckUtils]: 44: Hoare triple {6523#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6513#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:26,115 INFO L290 TraceCheckUtils]: 43: Hoare triple {6527#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6523#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:26,115 INFO L290 TraceCheckUtils]: 42: Hoare triple {6527#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6527#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) 0))} is VALID [2022-02-20 23:41:26,115 INFO L290 TraceCheckUtils]: 41: Hoare triple {6527#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6527#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) 0))} is VALID [2022-02-20 23:41:26,116 INFO L290 TraceCheckUtils]: 40: Hoare triple {6527#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6527#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) 0))} is VALID [2022-02-20 23:41:26,116 INFO L290 TraceCheckUtils]: 39: Hoare triple {6540#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6527#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) 0))} is VALID [2022-02-20 23:41:26,117 INFO L290 TraceCheckUtils]: 38: Hoare triple {6540#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6540#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) 0))} is VALID [2022-02-20 23:41:26,117 INFO L290 TraceCheckUtils]: 37: Hoare triple {6540#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6540#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) 0))} is VALID [2022-02-20 23:41:26,118 INFO L290 TraceCheckUtils]: 36: Hoare triple {6540#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6540#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) 0))} is VALID [2022-02-20 23:41:26,118 INFO L290 TraceCheckUtils]: 35: Hoare triple {6553#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6540#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) 0))} is VALID [2022-02-20 23:41:26,119 INFO L290 TraceCheckUtils]: 34: Hoare triple {6553#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6553#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) 0))} is VALID [2022-02-20 23:41:26,119 INFO L290 TraceCheckUtils]: 33: Hoare triple {6553#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6553#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) 0))} is VALID [2022-02-20 23:41:26,120 INFO L290 TraceCheckUtils]: 32: Hoare triple {6553#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6553#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) 0))} is VALID [2022-02-20 23:41:26,120 INFO L290 TraceCheckUtils]: 31: Hoare triple {6566#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6553#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) 0))} is VALID [2022-02-20 23:41:26,121 INFO L290 TraceCheckUtils]: 30: Hoare triple {6566#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6566#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) 0))} is VALID [2022-02-20 23:41:26,121 INFO L290 TraceCheckUtils]: 29: Hoare triple {6566#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6566#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) 0))} is VALID [2022-02-20 23:41:26,121 INFO L290 TraceCheckUtils]: 28: Hoare triple {6566#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6566#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) 0))} is VALID [2022-02-20 23:41:26,122 INFO L290 TraceCheckUtils]: 27: Hoare triple {6579#(or (<= (+ 6 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {6566#(or (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) 0))} is VALID [2022-02-20 23:41:26,123 INFO L290 TraceCheckUtils]: 26: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {6579#(or (<= (+ 6 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetString~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:26,123 INFO L290 TraceCheckUtils]: 25: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:26,123 INFO L290 TraceCheckUtils]: 24: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:26,123 INFO L290 TraceCheckUtils]: 23: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet10#1; {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:26,124 INFO L290 TraceCheckUtils]: 22: Hoare triple {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:26,124 INFO L290 TraceCheckUtils]: 21: Hoare triple {6415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6419#(< 5 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:26,125 INFO L290 TraceCheckUtils]: 20: Hoare triple {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6415#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,125 INFO L290 TraceCheckUtils]: 19: Hoare triple {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,125 INFO L290 TraceCheckUtils]: 18: Hoare triple {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,125 INFO L290 TraceCheckUtils]: 17: Hoare triple {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,126 INFO L290 TraceCheckUtils]: 16: Hoare triple {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6402#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,126 INFO L290 TraceCheckUtils]: 15: Hoare triple {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,126 INFO L290 TraceCheckUtils]: 14: Hoare triple {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,127 INFO L290 TraceCheckUtils]: 13: Hoare triple {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,127 INFO L290 TraceCheckUtils]: 12: Hoare triple {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6389#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,127 INFO L290 TraceCheckUtils]: 11: Hoare triple {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,128 INFO L290 TraceCheckUtils]: 10: Hoare triple {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,128 INFO L290 TraceCheckUtils]: 9: Hoare triple {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,128 INFO L290 TraceCheckUtils]: 8: Hoare triple {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6376#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,129 INFO L290 TraceCheckUtils]: 7: Hoare triple {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,129 INFO L290 TraceCheckUtils]: 6: Hoare triple {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,129 INFO L290 TraceCheckUtils]: 5: Hoare triple {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,130 INFO L290 TraceCheckUtils]: 4: Hoare triple {6334#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {6363#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:26,130 INFO L290 TraceCheckUtils]: 3: Hoare triple {6334#true} assume !(main_~length2~0#1 < 1); {6334#true} is VALID [2022-02-20 23:41:26,130 INFO L290 TraceCheckUtils]: 2: Hoare triple {6334#true} assume !(main_~length1~0#1 < 1); {6334#true} is VALID [2022-02-20 23:41:26,130 INFO L290 TraceCheckUtils]: 1: Hoare triple {6334#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {6334#true} is VALID [2022-02-20 23:41:26,131 INFO L290 TraceCheckUtils]: 0: Hoare triple {6334#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6334#true} is VALID [2022-02-20 23:41:26,131 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 28 proven. 62 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:26,131 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [9180877] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:26,131 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:26,131 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 15, 15] total 35 [2022-02-20 23:41:26,131 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [715549784] [2022-02-20 23:41:26,132 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:26,132 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 35 states have (on average 3.342857142857143) internal successors, (117), 36 states have internal predecessors, (117), 0 states have call successors, (0), 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 49 [2022-02-20 23:41:26,132 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:26,132 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 36 states, 35 states have (on average 3.342857142857143) internal successors, (117), 36 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:26,220 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 117 edges. 117 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:26,220 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 36 states [2022-02-20 23:41:26,220 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:26,221 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2022-02-20 23:41:26,221 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=182, Invalid=1078, Unknown=0, NotChecked=0, Total=1260 [2022-02-20 23:41:26,221 INFO L87 Difference]: Start difference. First operand 52 states and 53 transitions. Second operand has 36 states, 35 states have (on average 3.342857142857143) internal successors, (117), 36 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:27,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:27,154 INFO L93 Difference]: Finished difference Result 59 states and 60 transitions. [2022-02-20 23:41:27,155 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:41:27,155 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 35 states have (on average 3.342857142857143) internal successors, (117), 36 states have internal predecessors, (117), 0 states have call successors, (0), 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 49 [2022-02-20 23:41:27,155 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:27,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 3.342857142857143) internal successors, (117), 36 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:27,155 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 61 transitions. [2022-02-20 23:41:27,155 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 3.342857142857143) internal successors, (117), 36 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:27,156 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 61 transitions. [2022-02-20 23:41:27,156 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 61 transitions. [2022-02-20 23:41:27,204 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:27,204 INFO L225 Difference]: With dead ends: 59 [2022-02-20 23:41:27,204 INFO L226 Difference]: Without dead ends: 59 [2022-02-20 23:41:27,205 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 74 SyntacticMatches, 1 SemanticMatches, 46 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 381 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=443, Invalid=1813, Unknown=0, NotChecked=0, Total=2256 [2022-02-20 23:41:27,205 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 257 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 359 mSolverCounterSat, 64 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 257 SdHoareTripleChecker+Valid, 145 SdHoareTripleChecker+Invalid, 423 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 64 IncrementalHoareTripleChecker+Valid, 359 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:27,206 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [257 Valid, 145 Invalid, 423 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [64 Valid, 359 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:41:27,206 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-02-20 23:41:27,206 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 55. [2022-02-20 23:41:27,207 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:27,207 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 55 states, 53 states have (on average 1.0566037735849056) internal successors, (56), 54 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call 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:27,207 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 55 states, 53 states have (on average 1.0566037735849056) internal successors, (56), 54 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call 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:27,207 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 55 states, 53 states have (on average 1.0566037735849056) internal successors, (56), 54 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call 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:27,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:27,208 INFO L93 Difference]: Finished difference Result 59 states and 60 transitions. [2022-02-20 23:41:27,208 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 60 transitions. [2022-02-20 23:41:27,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:27,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:27,208 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 53 states have (on average 1.0566037735849056) internal successors, (56), 54 states have internal predecessors, (56), 0 states have call successors, (0), 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 59 states. [2022-02-20 23:41:27,208 INFO L87 Difference]: Start difference. First operand has 55 states, 53 states have (on average 1.0566037735849056) internal successors, (56), 54 states have internal predecessors, (56), 0 states have call successors, (0), 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 59 states. [2022-02-20 23:41:27,209 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:27,209 INFO L93 Difference]: Finished difference Result 59 states and 60 transitions. [2022-02-20 23:41:27,209 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 60 transitions. [2022-02-20 23:41:27,209 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:27,209 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:27,209 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:27,209 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:27,210 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 53 states have (on average 1.0566037735849056) internal successors, (56), 54 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call 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:27,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 56 transitions. [2022-02-20 23:41:27,210 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 56 transitions. Word has length 49 [2022-02-20 23:41:27,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:27,210 INFO L470 AbstractCegarLoop]: Abstraction has 55 states and 56 transitions. [2022-02-20 23:41:27,211 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 36 states, 35 states have (on average 3.342857142857143) internal successors, (117), 36 states have internal predecessors, (117), 0 states have call successors, (0), 0 states have call 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:27,211 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 56 transitions. [2022-02-20 23:41:27,211 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-02-20 23:41:27,211 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:27,211 INFO L514 BasicCegarLoop]: trace histogram [6, 5, 5, 5, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:27,228 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:41:27,415 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,SelfDestructingSolverStorable26 [2022-02-20 23:41:27,415 INFO L402 AbstractCegarLoop]: === Iteration 28 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:27,416 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:27,416 INFO L85 PathProgramCache]: Analyzing trace with hash -936321247, now seen corresponding path program 6 times [2022-02-20 23:41:27,416 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:27,416 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1510100719] [2022-02-20 23:41:27,416 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:27,416 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:27,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:27,635 INFO L290 TraceCheckUtils]: 0: Hoare triple {6916#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6916#true} is VALID [2022-02-20 23:41:27,635 INFO L290 TraceCheckUtils]: 1: Hoare triple {6916#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {6916#true} is VALID [2022-02-20 23:41:27,635 INFO L290 TraceCheckUtils]: 2: Hoare triple {6916#true} assume !(main_~length1~0#1 < 1); {6916#true} is VALID [2022-02-20 23:41:27,635 INFO L290 TraceCheckUtils]: 3: Hoare triple {6916#true} assume !(main_~length2~0#1 < 1); {6916#true} is VALID [2022-02-20 23:41:27,636 INFO L290 TraceCheckUtils]: 4: Hoare triple {6916#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {6918#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:27,636 INFO L290 TraceCheckUtils]: 5: Hoare triple {6918#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6918#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:27,636 INFO L290 TraceCheckUtils]: 6: Hoare triple {6918#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6918#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:27,637 INFO L290 TraceCheckUtils]: 7: Hoare triple {6918#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {6918#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:27,637 INFO L290 TraceCheckUtils]: 8: Hoare triple {6918#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6919#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,638 INFO L290 TraceCheckUtils]: 9: Hoare triple {6919#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6919#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,638 INFO L290 TraceCheckUtils]: 10: Hoare triple {6919#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6919#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,638 INFO L290 TraceCheckUtils]: 11: Hoare triple {6919#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {6919#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,639 INFO L290 TraceCheckUtils]: 12: Hoare triple {6919#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6920#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,639 INFO L290 TraceCheckUtils]: 13: Hoare triple {6920#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6920#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,640 INFO L290 TraceCheckUtils]: 14: Hoare triple {6920#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6920#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,640 INFO L290 TraceCheckUtils]: 15: Hoare triple {6920#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {6920#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,640 INFO L290 TraceCheckUtils]: 16: Hoare triple {6920#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6921#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,641 INFO L290 TraceCheckUtils]: 17: Hoare triple {6921#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6921#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,641 INFO L290 TraceCheckUtils]: 18: Hoare triple {6921#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6921#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,642 INFO L290 TraceCheckUtils]: 19: Hoare triple {6921#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {6921#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,642 INFO L290 TraceCheckUtils]: 20: Hoare triple {6921#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6922#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:27,643 INFO L290 TraceCheckUtils]: 21: Hoare triple {6922#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:27,643 INFO L290 TraceCheckUtils]: 22: Hoare triple {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:27,643 INFO L290 TraceCheckUtils]: 23: Hoare triple {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:27,644 INFO L290 TraceCheckUtils]: 24: Hoare triple {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:27,644 INFO L290 TraceCheckUtils]: 25: Hoare triple {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:27,644 INFO L290 TraceCheckUtils]: 26: Hoare triple {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:27,645 INFO L290 TraceCheckUtils]: 27: Hoare triple {6923#(and (<= 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {6924#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,645 INFO L290 TraceCheckUtils]: 28: Hoare triple {6924#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6924#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,646 INFO L290 TraceCheckUtils]: 29: Hoare triple {6924#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6924#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,646 INFO L290 TraceCheckUtils]: 30: Hoare triple {6924#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6924#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,646 INFO L290 TraceCheckUtils]: 31: Hoare triple {6924#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6925#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,647 INFO L290 TraceCheckUtils]: 32: Hoare triple {6925#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6925#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,647 INFO L290 TraceCheckUtils]: 33: Hoare triple {6925#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6925#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,648 INFO L290 TraceCheckUtils]: 34: Hoare triple {6925#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6925#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,648 INFO L290 TraceCheckUtils]: 35: Hoare triple {6925#(and (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6926#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,648 INFO L290 TraceCheckUtils]: 36: Hoare triple {6926#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6926#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,649 INFO L290 TraceCheckUtils]: 37: Hoare triple {6926#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6926#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,649 INFO L290 TraceCheckUtils]: 38: Hoare triple {6926#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6926#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,650 INFO L290 TraceCheckUtils]: 39: Hoare triple {6926#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6927#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,650 INFO L290 TraceCheckUtils]: 40: Hoare triple {6927#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6927#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,650 INFO L290 TraceCheckUtils]: 41: Hoare triple {6927#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6927#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,651 INFO L290 TraceCheckUtils]: 42: Hoare triple {6927#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6927#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:27,651 INFO L290 TraceCheckUtils]: 43: Hoare triple {6927#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6928#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:27,655 INFO L290 TraceCheckUtils]: 44: Hoare triple {6928#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6928#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:27,655 INFO L290 TraceCheckUtils]: 45: Hoare triple {6928#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {6928#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:27,656 INFO L290 TraceCheckUtils]: 46: Hoare triple {6928#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {6928#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:27,656 INFO L290 TraceCheckUtils]: 47: Hoare triple {6928#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {6929#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:27,657 INFO L290 TraceCheckUtils]: 48: Hoare triple {6929#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {6929#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:27,657 INFO L290 TraceCheckUtils]: 49: Hoare triple {6929#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {6917#false} is VALID [2022-02-20 23:41:27,658 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 15 proven. 80 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:27,658 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:27,658 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1510100719] [2022-02-20 23:41:27,658 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1510100719] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:27,658 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [227437229] [2022-02-20 23:41:27,658 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-02-20 23:41:27,658 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:27,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:27,659 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:41:27,660 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:41:27,785 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-02-20 23:41:27,785 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:27,786 INFO L263 TraceCheckSpWp]: Trace formula consists of 272 conjuncts, 41 conjunts are in the unsatisfiable core [2022-02-20 23:41:27,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:27,802 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:27,881 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:41:27,882 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 11 [2022-02-20 23:41:27,889 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 10 treesize of output 8 [2022-02-20 23:41:28,553 INFO L290 TraceCheckUtils]: 0: Hoare triple {6916#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6916#true} is VALID [2022-02-20 23:41:28,553 INFO L290 TraceCheckUtils]: 1: Hoare triple {6916#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {6916#true} is VALID [2022-02-20 23:41:28,553 INFO L290 TraceCheckUtils]: 2: Hoare triple {6916#true} assume !(main_~length1~0#1 < 1); {6916#true} is VALID [2022-02-20 23:41:28,553 INFO L290 TraceCheckUtils]: 3: Hoare triple {6916#true} assume !(main_~length2~0#1 < 1); {6916#true} is VALID [2022-02-20 23:41:28,554 INFO L290 TraceCheckUtils]: 4: Hoare triple {6916#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {6945#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,555 INFO L290 TraceCheckUtils]: 5: Hoare triple {6945#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6945#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,555 INFO L290 TraceCheckUtils]: 6: Hoare triple {6945#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6945#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,555 INFO L290 TraceCheckUtils]: 7: Hoare triple {6945#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {6945#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,556 INFO L290 TraceCheckUtils]: 8: Hoare triple {6945#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6958#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,556 INFO L290 TraceCheckUtils]: 9: Hoare triple {6958#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6958#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,557 INFO L290 TraceCheckUtils]: 10: Hoare triple {6958#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6958#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,557 INFO L290 TraceCheckUtils]: 11: Hoare triple {6958#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {6958#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,557 INFO L290 TraceCheckUtils]: 12: Hoare triple {6958#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6971#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,558 INFO L290 TraceCheckUtils]: 13: Hoare triple {6971#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6971#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {6971#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6971#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,559 INFO L290 TraceCheckUtils]: 15: Hoare triple {6971#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {6971#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,559 INFO L290 TraceCheckUtils]: 16: Hoare triple {6971#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6984#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,559 INFO L290 TraceCheckUtils]: 17: Hoare triple {6984#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {6984#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,560 INFO L290 TraceCheckUtils]: 18: Hoare triple {6984#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {6984#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,560 INFO L290 TraceCheckUtils]: 19: Hoare triple {6984#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {6984#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,561 INFO L290 TraceCheckUtils]: 20: Hoare triple {6984#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {6997#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:28,561 INFO L290 TraceCheckUtils]: 21: Hoare triple {6997#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,562 INFO L290 TraceCheckUtils]: 22: Hoare triple {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,562 INFO L290 TraceCheckUtils]: 23: Hoare triple {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,562 INFO L290 TraceCheckUtils]: 24: Hoare triple {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,563 INFO L290 TraceCheckUtils]: 25: Hoare triple {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,563 INFO L290 TraceCheckUtils]: 26: Hoare triple {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:28,564 INFO L290 TraceCheckUtils]: 27: Hoare triple {7001#(and (< 5 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {7020#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} is VALID [2022-02-20 23:41:28,564 INFO L290 TraceCheckUtils]: 28: Hoare triple {7020#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7020#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} is VALID [2022-02-20 23:41:28,565 INFO L290 TraceCheckUtils]: 29: Hoare triple {7020#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7020#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} is VALID [2022-02-20 23:41:28,565 INFO L290 TraceCheckUtils]: 30: Hoare triple {7020#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7020#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} is VALID [2022-02-20 23:41:28,565 INFO L290 TraceCheckUtils]: 31: Hoare triple {7020#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7033#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1))} is VALID [2022-02-20 23:41:28,566 INFO L290 TraceCheckUtils]: 32: Hoare triple {7033#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7033#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1))} is VALID [2022-02-20 23:41:28,566 INFO L290 TraceCheckUtils]: 33: Hoare triple {7033#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7033#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1))} is VALID [2022-02-20 23:41:28,567 INFO L290 TraceCheckUtils]: 34: Hoare triple {7033#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7033#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1))} is VALID [2022-02-20 23:41:28,567 INFO L290 TraceCheckUtils]: 35: Hoare triple {7033#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 1))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7046#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:28,567 INFO L290 TraceCheckUtils]: 36: Hoare triple {7046#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7046#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:28,568 INFO L290 TraceCheckUtils]: 37: Hoare triple {7046#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7046#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:28,568 INFO L290 TraceCheckUtils]: 38: Hoare triple {7046#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7046#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:28,569 INFO L290 TraceCheckUtils]: 39: Hoare triple {7046#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7059#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} is VALID [2022-02-20 23:41:28,569 INFO L290 TraceCheckUtils]: 40: Hoare triple {7059#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7059#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} is VALID [2022-02-20 23:41:28,569 INFO L290 TraceCheckUtils]: 41: Hoare triple {7059#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7059#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} is VALID [2022-02-20 23:41:28,570 INFO L290 TraceCheckUtils]: 42: Hoare triple {7059#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7059#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} is VALID [2022-02-20 23:41:28,570 INFO L290 TraceCheckUtils]: 43: Hoare triple {7059#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 3))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7072#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 4))} is VALID [2022-02-20 23:41:28,571 INFO L290 TraceCheckUtils]: 44: Hoare triple {7072#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 4))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7072#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 4))} is VALID [2022-02-20 23:41:28,571 INFO L290 TraceCheckUtils]: 45: Hoare triple {7072#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 4))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7079#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:28,571 INFO L290 TraceCheckUtils]: 46: Hoare triple {7079#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7079#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:28,572 INFO L290 TraceCheckUtils]: 47: Hoare triple {7079#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7086#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 5))} is VALID [2022-02-20 23:41:28,572 INFO L290 TraceCheckUtils]: 48: Hoare triple {7086#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 5))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7086#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 5))} is VALID [2022-02-20 23:41:28,573 INFO L290 TraceCheckUtils]: 49: Hoare triple {7086#(and (< 5 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 5))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {6917#false} is VALID [2022-02-20 23:41:28,573 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 28 proven. 67 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:28,573 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:29,517 INFO L290 TraceCheckUtils]: 49: Hoare triple {7093#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {6917#false} is VALID [2022-02-20 23:41:29,518 INFO L290 TraceCheckUtils]: 48: Hoare triple {7093#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7093#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:29,518 INFO L290 TraceCheckUtils]: 47: Hoare triple {7100#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7093#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:29,519 INFO L290 TraceCheckUtils]: 46: Hoare triple {7100#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7100#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,519 INFO L290 TraceCheckUtils]: 45: Hoare triple {7107#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7100#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,519 INFO L290 TraceCheckUtils]: 44: Hoare triple {7107#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7107#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:29,520 INFO L290 TraceCheckUtils]: 43: Hoare triple {7114#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7107#(or (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:29,520 INFO L290 TraceCheckUtils]: 42: Hoare triple {7114#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7114#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,521 INFO L290 TraceCheckUtils]: 41: Hoare triple {7114#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7114#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,521 INFO L290 TraceCheckUtils]: 40: Hoare triple {7114#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7114#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,522 INFO L290 TraceCheckUtils]: 39: Hoare triple {7127#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7114#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,522 INFO L290 TraceCheckUtils]: 38: Hoare triple {7127#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7127#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,522 INFO L290 TraceCheckUtils]: 37: Hoare triple {7127#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7127#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,523 INFO L290 TraceCheckUtils]: 36: Hoare triple {7127#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7127#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,523 INFO L290 TraceCheckUtils]: 35: Hoare triple {7140#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) 0) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7127#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,524 INFO L290 TraceCheckUtils]: 34: Hoare triple {7140#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) 0) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7140#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) 0) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,524 INFO L290 TraceCheckUtils]: 33: Hoare triple {7140#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) 0) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7140#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) 0) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,525 INFO L290 TraceCheckUtils]: 32: Hoare triple {7140#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) 0) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7140#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) 0) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,525 INFO L290 TraceCheckUtils]: 31: Hoare triple {7153#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7140#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) 0) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,526 INFO L290 TraceCheckUtils]: 30: Hoare triple {7153#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7153#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,526 INFO L290 TraceCheckUtils]: 29: Hoare triple {7153#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7153#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,527 INFO L290 TraceCheckUtils]: 28: Hoare triple {7153#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7153#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,527 INFO L290 TraceCheckUtils]: 27: Hoare triple {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {7153#(or (< (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) 0) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:29,528 INFO L290 TraceCheckUtils]: 26: Hoare triple {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,528 INFO L290 TraceCheckUtils]: 25: Hoare triple {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,528 INFO L290 TraceCheckUtils]: 24: Hoare triple {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,529 INFO L290 TraceCheckUtils]: 23: Hoare triple {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} havoc main_#t~nondet10#1; {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,529 INFO L290 TraceCheckUtils]: 22: Hoare triple {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,530 INFO L290 TraceCheckUtils]: 21: Hoare triple {7185#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7166#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,530 INFO L290 TraceCheckUtils]: 20: Hoare triple {7189#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7185#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,531 INFO L290 TraceCheckUtils]: 19: Hoare triple {7189#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} havoc main_#t~nondet10#1; {7189#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,531 INFO L290 TraceCheckUtils]: 18: Hoare triple {7189#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7189#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,532 INFO L290 TraceCheckUtils]: 17: Hoare triple {7189#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7189#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,532 INFO L290 TraceCheckUtils]: 16: Hoare triple {7202#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7189#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,533 INFO L290 TraceCheckUtils]: 15: Hoare triple {7202#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} havoc main_#t~nondet10#1; {7202#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,533 INFO L290 TraceCheckUtils]: 14: Hoare triple {7202#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7202#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,534 INFO L290 TraceCheckUtils]: 13: Hoare triple {7202#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7202#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,534 INFO L290 TraceCheckUtils]: 12: Hoare triple {7215#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7202#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,535 INFO L290 TraceCheckUtils]: 11: Hoare triple {7215#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} havoc main_#t~nondet10#1; {7215#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,535 INFO L290 TraceCheckUtils]: 10: Hoare triple {7215#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7215#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,536 INFO L290 TraceCheckUtils]: 9: Hoare triple {7215#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7215#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,536 INFO L290 TraceCheckUtils]: 8: Hoare triple {7228#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7215#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,537 INFO L290 TraceCheckUtils]: 7: Hoare triple {7228#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} havoc main_#t~nondet10#1; {7228#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,537 INFO L290 TraceCheckUtils]: 6: Hoare triple {7228#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7228#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,538 INFO L290 TraceCheckUtils]: 5: Hoare triple {7228#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7228#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,539 INFO L290 TraceCheckUtils]: 4: Hoare triple {6916#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {7228#(or (<= (+ 6 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetArea~0#1.offset| 4) 0))} is VALID [2022-02-20 23:41:29,539 INFO L290 TraceCheckUtils]: 3: Hoare triple {6916#true} assume !(main_~length2~0#1 < 1); {6916#true} is VALID [2022-02-20 23:41:29,539 INFO L290 TraceCheckUtils]: 2: Hoare triple {6916#true} assume !(main_~length1~0#1 < 1); {6916#true} is VALID [2022-02-20 23:41:29,539 INFO L290 TraceCheckUtils]: 1: Hoare triple {6916#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {6916#true} is VALID [2022-02-20 23:41:29,539 INFO L290 TraceCheckUtils]: 0: Hoare triple {6916#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6916#true} is VALID [2022-02-20 23:41:29,539 INFO L134 CoverageAnalysis]: Checked inductivity of 95 backedges. 45 proven. 50 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:29,539 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [227437229] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:29,539 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:29,540 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 14, 14] total 39 [2022-02-20 23:41:29,540 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [423011993] [2022-02-20 23:41:29,540 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:29,540 INFO L78 Accepts]: Start accepts. Automaton has has 40 states, 39 states have (on average 3.641025641025641) internal successors, (142), 40 states have internal predecessors, (142), 0 states have call successors, (0), 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:29,540 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:29,541 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 40 states, 39 states have (on average 3.641025641025641) internal successors, (142), 40 states have internal predecessors, (142), 0 states have call successors, (0), 0 states have call 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 L122 InductivityCheck]: Floyd-Hoare automaton has 142 edges. 142 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:29,649 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 40 states [2022-02-20 23:41:29,649 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:29,649 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 40 interpolants. [2022-02-20 23:41:29,650 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=225, Invalid=1335, Unknown=0, NotChecked=0, Total=1560 [2022-02-20 23:41:29,650 INFO L87 Difference]: Start difference. First operand 55 states and 56 transitions. Second operand has 40 states, 39 states have (on average 3.641025641025641) internal successors, (142), 40 states have internal predecessors, (142), 0 states have call successors, (0), 0 states have call 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,757 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:30,757 INFO L93 Difference]: Finished difference Result 58 states and 59 transitions. [2022-02-20 23:41:30,757 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:41:30,757 INFO L78 Accepts]: Start accepts. Automaton has has 40 states, 39 states have (on average 3.641025641025641) internal successors, (142), 40 states have internal predecessors, (142), 0 states have call successors, (0), 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:30,757 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:30,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 39 states have (on average 3.641025641025641) internal successors, (142), 40 states have internal predecessors, (142), 0 states have call successors, (0), 0 states have call 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,758 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 60 transitions. [2022-02-20 23:41:30,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 39 states have (on average 3.641025641025641) internal successors, (142), 40 states have internal predecessors, (142), 0 states have call successors, (0), 0 states have call 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,759 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 60 transitions. [2022-02-20 23:41:30,759 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 60 transitions. [2022-02-20 23:41:30,814 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:30,814 INFO L225 Difference]: With dead ends: 58 [2022-02-20 23:41:30,814 INFO L226 Difference]: Without dead ends: 58 [2022-02-20 23:41:30,815 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 50 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 469 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=532, Invalid=2120, Unknown=0, NotChecked=0, Total=2652 [2022-02-20 23:41:30,815 INFO L933 BasicCegarLoop]: 16 mSDtfsCounter, 190 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 362 mSolverCounterSat, 55 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 190 SdHoareTripleChecker+Valid, 137 SdHoareTripleChecker+Invalid, 417 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 55 IncrementalHoareTripleChecker+Valid, 362 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:30,816 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [190 Valid, 137 Invalid, 417 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [55 Valid, 362 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:41:30,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2022-02-20 23:41:30,818 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 56. [2022-02-20 23:41:30,818 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:30,818 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand has 56 states, 54 states have (on average 1.0555555555555556) internal successors, (57), 55 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call 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,818 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand has 56 states, 54 states have (on average 1.0555555555555556) internal successors, (57), 55 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call 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,818 INFO L87 Difference]: Start difference. First operand 58 states. Second operand has 56 states, 54 states have (on average 1.0555555555555556) internal successors, (57), 55 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call 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,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:30,819 INFO L93 Difference]: Finished difference Result 58 states and 59 transitions. [2022-02-20 23:41:30,819 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 59 transitions. [2022-02-20 23:41:30,819 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:30,819 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:30,819 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 54 states have (on average 1.0555555555555556) internal successors, (57), 55 states have internal predecessors, (57), 0 states have call successors, (0), 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 58 states. [2022-02-20 23:41:30,819 INFO L87 Difference]: Start difference. First operand has 56 states, 54 states have (on average 1.0555555555555556) internal successors, (57), 55 states have internal predecessors, (57), 0 states have call successors, (0), 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 58 states. [2022-02-20 23:41:30,820 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:30,820 INFO L93 Difference]: Finished difference Result 58 states and 59 transitions. [2022-02-20 23:41:30,820 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 59 transitions. [2022-02-20 23:41:30,820 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:30,820 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:30,820 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:30,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:30,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 54 states have (on average 1.0555555555555556) internal successors, (57), 55 states have internal predecessors, (57), 0 states have call successors, (0), 0 states have call 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,821 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 57 transitions. [2022-02-20 23:41:30,821 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 57 transitions. Word has length 50 [2022-02-20 23:41:30,821 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:30,822 INFO L470 AbstractCegarLoop]: Abstraction has 56 states and 57 transitions. [2022-02-20 23:41:30,822 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 40 states, 39 states have (on average 3.641025641025641) internal successors, (142), 40 states have internal predecessors, (142), 0 states have call successors, (0), 0 states have call 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,822 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 57 transitions. [2022-02-20 23:41:30,822 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-02-20 23:41:30,822 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:30,822 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 5, 5, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:30,853 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:41:31,040 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,SelfDestructingSolverStorable27 [2022-02-20 23:41:31,040 INFO L402 AbstractCegarLoop]: === Iteration 29 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:31,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:31,040 INFO L85 PathProgramCache]: Analyzing trace with hash 1866312237, now seen corresponding path program 7 times [2022-02-20 23:41:31,040 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:31,040 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1970759629] [2022-02-20 23:41:31,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:31,041 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:31,079 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:31,372 INFO L290 TraceCheckUtils]: 0: Hoare triple {7506#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7506#true} is VALID [2022-02-20 23:41:31,372 INFO L290 TraceCheckUtils]: 1: Hoare triple {7506#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {7506#true} is VALID [2022-02-20 23:41:31,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {7506#true} assume !(main_~length1~0#1 < 1); {7506#true} is VALID [2022-02-20 23:41:31,372 INFO L290 TraceCheckUtils]: 3: Hoare triple {7506#true} assume !(main_~length2~0#1 < 1); {7506#true} is VALID [2022-02-20 23:41:31,373 INFO L290 TraceCheckUtils]: 4: Hoare triple {7506#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {7508#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,373 INFO L290 TraceCheckUtils]: 5: Hoare triple {7508#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7508#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,374 INFO L290 TraceCheckUtils]: 6: Hoare triple {7508#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7508#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,374 INFO L290 TraceCheckUtils]: 7: Hoare triple {7508#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {7508#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:31,375 INFO L290 TraceCheckUtils]: 8: Hoare triple {7508#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7509#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:31,375 INFO L290 TraceCheckUtils]: 9: Hoare triple {7509#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7509#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:31,376 INFO L290 TraceCheckUtils]: 10: Hoare triple {7509#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7509#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:31,376 INFO L290 TraceCheckUtils]: 11: Hoare triple {7509#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet10#1; {7509#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:31,376 INFO L290 TraceCheckUtils]: 12: Hoare triple {7509#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7510#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,377 INFO L290 TraceCheckUtils]: 13: Hoare triple {7510#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7510#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,377 INFO L290 TraceCheckUtils]: 14: Hoare triple {7510#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7510#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,378 INFO L290 TraceCheckUtils]: 15: Hoare triple {7510#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {7510#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,378 INFO L290 TraceCheckUtils]: 16: Hoare triple {7510#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7511#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,379 INFO L290 TraceCheckUtils]: 17: Hoare triple {7511#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7511#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,379 INFO L290 TraceCheckUtils]: 18: Hoare triple {7511#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7511#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,379 INFO L290 TraceCheckUtils]: 19: Hoare triple {7511#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {7511#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,380 INFO L290 TraceCheckUtils]: 20: Hoare triple {7511#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7512#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:31,380 INFO L290 TraceCheckUtils]: 21: Hoare triple {7512#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7513#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:31,381 INFO L290 TraceCheckUtils]: 22: Hoare triple {7513#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7513#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:31,381 INFO L290 TraceCheckUtils]: 23: Hoare triple {7513#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {7513#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:31,382 INFO L290 TraceCheckUtils]: 24: Hoare triple {7513#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7514#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:31,382 INFO L290 TraceCheckUtils]: 25: Hoare triple {7514#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {7515#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:31,383 INFO L290 TraceCheckUtils]: 26: Hoare triple {7515#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (<= 6 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {7516#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} is VALID [2022-02-20 23:41:31,384 INFO L290 TraceCheckUtils]: 27: Hoare triple {7516#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {7517#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 5) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:31,384 INFO L290 TraceCheckUtils]: 28: Hoare triple {7517#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 5) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7517#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 5) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:31,385 INFO L290 TraceCheckUtils]: 29: Hoare triple {7517#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 5) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7517#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 5) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:31,385 INFO L290 TraceCheckUtils]: 30: Hoare triple {7517#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 5) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7517#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 5) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:31,385 INFO L290 TraceCheckUtils]: 31: Hoare triple {7517#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 5) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:31,386 INFO L290 TraceCheckUtils]: 32: Hoare triple {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:31,386 INFO L290 TraceCheckUtils]: 33: Hoare triple {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:31,387 INFO L290 TraceCheckUtils]: 34: Hoare triple {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:31,387 INFO L290 TraceCheckUtils]: 35: Hoare triple {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:31,395 INFO L290 TraceCheckUtils]: 36: Hoare triple {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:31,396 INFO L290 TraceCheckUtils]: 37: Hoare triple {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:31,397 INFO L290 TraceCheckUtils]: 38: Hoare triple {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:31,397 INFO L290 TraceCheckUtils]: 39: Hoare triple {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:31,398 INFO L290 TraceCheckUtils]: 40: Hoare triple {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:31,398 INFO L290 TraceCheckUtils]: 41: Hoare triple {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:31,399 INFO L290 TraceCheckUtils]: 42: Hoare triple {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:31,399 INFO L290 TraceCheckUtils]: 43: Hoare triple {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:31,400 INFO L290 TraceCheckUtils]: 44: Hoare triple {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:31,400 INFO L290 TraceCheckUtils]: 45: Hoare triple {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:31,401 INFO L290 TraceCheckUtils]: 46: Hoare triple {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:31,401 INFO L290 TraceCheckUtils]: 47: Hoare triple {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7522#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:31,402 INFO L290 TraceCheckUtils]: 48: Hoare triple {7522#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:31,402 INFO L290 TraceCheckUtils]: 49: Hoare triple {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:31,402 INFO L290 TraceCheckUtils]: 50: Hoare triple {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7507#false} is VALID [2022-02-20 23:41:31,402 INFO L290 TraceCheckUtils]: 51: Hoare triple {7507#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7507#false} is VALID [2022-02-20 23:41:31,402 INFO L290 TraceCheckUtils]: 52: Hoare triple {7507#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {7507#false} is VALID [2022-02-20 23:41:31,403 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 11 proven. 100 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:31,403 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:31,403 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1970759629] [2022-02-20 23:41:31,403 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1970759629] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:31,403 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1364500817] [2022-02-20 23:41:31,403 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-02-20 23:41:31,403 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:31,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:31,404 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:41:31,405 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:41:31,506 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:31,508 INFO L263 TraceCheckSpWp]: Trace formula consists of 289 conjuncts, 73 conjunts are in the unsatisfiable core [2022-02-20 23:41:31,521 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:31,522 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:31,544 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 10 treesize of output 8 [2022-02-20 23:41:31,849 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:32,068 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 19 [2022-02-20 23:41:32,243 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:32,273 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:32,302 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:32,343 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:32,391 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:32,397 INFO L290 TraceCheckUtils]: 0: Hoare triple {7506#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7506#true} is VALID [2022-02-20 23:41:32,397 INFO L290 TraceCheckUtils]: 1: Hoare triple {7506#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {7506#true} is VALID [2022-02-20 23:41:32,397 INFO L290 TraceCheckUtils]: 2: Hoare triple {7506#true} assume !(main_~length1~0#1 < 1); {7506#true} is VALID [2022-02-20 23:41:32,397 INFO L290 TraceCheckUtils]: 3: Hoare triple {7506#true} assume !(main_~length2~0#1 < 1); {7506#true} is VALID [2022-02-20 23:41:32,398 INFO L290 TraceCheckUtils]: 4: Hoare triple {7506#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,398 INFO L290 TraceCheckUtils]: 5: Hoare triple {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,399 INFO L290 TraceCheckUtils]: 6: Hoare triple {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,399 INFO L290 TraceCheckUtils]: 7: Hoare triple {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,399 INFO L290 TraceCheckUtils]: 8: Hoare triple {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:32,400 INFO L290 TraceCheckUtils]: 9: Hoare triple {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:32,400 INFO L290 TraceCheckUtils]: 10: Hoare triple {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:32,401 INFO L290 TraceCheckUtils]: 11: Hoare triple {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet10#1; {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:32,401 INFO L290 TraceCheckUtils]: 12: Hoare triple {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,408 INFO L290 TraceCheckUtils]: 13: Hoare triple {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,408 INFO L290 TraceCheckUtils]: 14: Hoare triple {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,409 INFO L290 TraceCheckUtils]: 15: Hoare triple {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,409 INFO L290 TraceCheckUtils]: 16: Hoare triple {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,409 INFO L290 TraceCheckUtils]: 17: Hoare triple {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,410 INFO L290 TraceCheckUtils]: 18: Hoare triple {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,410 INFO L290 TraceCheckUtils]: 19: Hoare triple {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,410 INFO L290 TraceCheckUtils]: 20: Hoare triple {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:32,411 INFO L290 TraceCheckUtils]: 21: Hoare triple {7591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7595#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:32,411 INFO L290 TraceCheckUtils]: 22: Hoare triple {7595#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7595#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:32,412 INFO L290 TraceCheckUtils]: 23: Hoare triple {7595#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet10#1; {7595#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:32,412 INFO L290 TraceCheckUtils]: 24: Hoare triple {7595#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7605#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 5) (< 5 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:32,413 INFO L290 TraceCheckUtils]: 25: Hoare triple {7605#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 5) (< 5 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {7609#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:32,414 INFO L290 TraceCheckUtils]: 26: Hoare triple {7609#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {7613#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,414 INFO L290 TraceCheckUtils]: 27: Hoare triple {7613#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {7617#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:32,415 INFO L290 TraceCheckUtils]: 28: Hoare triple {7617#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7617#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:32,416 INFO L290 TraceCheckUtils]: 29: Hoare triple {7617#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7617#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:32,416 INFO L290 TraceCheckUtils]: 30: Hoare triple {7617#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7617#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:32,417 INFO L290 TraceCheckUtils]: 31: Hoare triple {7617#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:32,417 INFO L290 TraceCheckUtils]: 32: Hoare triple {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:32,418 INFO L290 TraceCheckUtils]: 33: Hoare triple {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:32,418 INFO L290 TraceCheckUtils]: 34: Hoare triple {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:32,419 INFO L290 TraceCheckUtils]: 35: Hoare triple {7518#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:32,419 INFO L290 TraceCheckUtils]: 36: Hoare triple {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:32,420 INFO L290 TraceCheckUtils]: 37: Hoare triple {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:32,420 INFO L290 TraceCheckUtils]: 38: Hoare triple {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:32,421 INFO L290 TraceCheckUtils]: 39: Hoare triple {7519#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:32,421 INFO L290 TraceCheckUtils]: 40: Hoare triple {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:32,422 INFO L290 TraceCheckUtils]: 41: Hoare triple {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:32,422 INFO L290 TraceCheckUtils]: 42: Hoare triple {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:32,423 INFO L290 TraceCheckUtils]: 43: Hoare triple {7520#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:32,423 INFO L290 TraceCheckUtils]: 44: Hoare triple {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:32,424 INFO L290 TraceCheckUtils]: 45: Hoare triple {7521#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7672#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:32,424 INFO L290 TraceCheckUtils]: 46: Hoare triple {7672#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7672#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:32,424 INFO L290 TraceCheckUtils]: 47: Hoare triple {7672#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7522#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:32,425 INFO L290 TraceCheckUtils]: 48: Hoare triple {7522#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:32,425 INFO L290 TraceCheckUtils]: 49: Hoare triple {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:32,425 INFO L290 TraceCheckUtils]: 50: Hoare triple {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7507#false} is VALID [2022-02-20 23:41:32,425 INFO L290 TraceCheckUtils]: 51: Hoare triple {7507#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7507#false} is VALID [2022-02-20 23:41:32,426 INFO L290 TraceCheckUtils]: 52: Hoare triple {7507#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {7507#false} is VALID [2022-02-20 23:41:32,426 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 11 proven. 100 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:32,426 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:32,448 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) is different from false [2022-02-20 23:41:32,460 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) is different from false [2022-02-20 23:41:32,478 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) is different from false [2022-02-20 23:41:32,496 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)) is different from false [2022-02-20 23:41:32,513 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)) is different from false [2022-02-20 23:41:32,532 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_677) |c_ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |c_ULTIMATE.start_main_~nondetString~0#1.offset|)) 0)) is different from false [2022-02-20 23:41:32,544 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:32,544 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:41:32,552 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:32,553 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 37 treesize of output 37 [2022-02-20 23:41:32,556 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 11 treesize of output 7 [2022-02-20 23:41:32,890 INFO L290 TraceCheckUtils]: 52: Hoare triple {7507#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {7507#false} is VALID [2022-02-20 23:41:32,890 INFO L290 TraceCheckUtils]: 51: Hoare triple {7507#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7507#false} is VALID [2022-02-20 23:41:32,890 INFO L290 TraceCheckUtils]: 50: Hoare triple {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7507#false} is VALID [2022-02-20 23:41:32,890 INFO L290 TraceCheckUtils]: 49: Hoare triple {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:32,891 INFO L290 TraceCheckUtils]: 48: Hoare triple {7522#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7523#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:32,891 INFO L290 TraceCheckUtils]: 47: Hoare triple {7672#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7522#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:32,892 INFO L290 TraceCheckUtils]: 46: Hoare triple {7672#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7672#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:32,892 INFO L290 TraceCheckUtils]: 45: Hoare triple {7715#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7672#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:32,893 INFO L290 TraceCheckUtils]: 44: Hoare triple {7715#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7715#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))))} is VALID [2022-02-20 23:41:32,893 INFO L290 TraceCheckUtils]: 43: Hoare triple {7722#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7715#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1))))} is VALID [2022-02-20 23:41:32,894 INFO L290 TraceCheckUtils]: 42: Hoare triple {7722#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7722#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:32,895 WARN L290 TraceCheckUtils]: 41: Hoare triple {7722#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7722#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is UNKNOWN [2022-02-20 23:41:32,895 INFO L290 TraceCheckUtils]: 40: Hoare triple {7722#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7722#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:32,896 INFO L290 TraceCheckUtils]: 39: Hoare triple {7735#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7722#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:32,896 INFO L290 TraceCheckUtils]: 38: Hoare triple {7735#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7735#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:32,897 WARN L290 TraceCheckUtils]: 37: Hoare triple {7735#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7735#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is UNKNOWN [2022-02-20 23:41:32,898 INFO L290 TraceCheckUtils]: 36: Hoare triple {7735#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7735#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:32,898 INFO L290 TraceCheckUtils]: 35: Hoare triple {7748#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7735#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:32,899 INFO L290 TraceCheckUtils]: 34: Hoare triple {7748#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7748#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))))} is VALID [2022-02-20 23:41:32,900 WARN L290 TraceCheckUtils]: 33: Hoare triple {7748#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7748#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))))} is UNKNOWN [2022-02-20 23:41:32,900 INFO L290 TraceCheckUtils]: 32: Hoare triple {7748#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7748#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))))} is VALID [2022-02-20 23:41:32,901 INFO L290 TraceCheckUtils]: 31: Hoare triple {7761#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {7748#(forall ((v_ArrVal_677 (Array Int Int))) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4))))} is VALID [2022-02-20 23:41:32,901 INFO L290 TraceCheckUtils]: 30: Hoare triple {7761#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {7761#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} is VALID [2022-02-20 23:41:32,902 WARN L290 TraceCheckUtils]: 29: Hoare triple {7761#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {7761#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} is UNKNOWN [2022-02-20 23:41:32,902 INFO L290 TraceCheckUtils]: 28: Hoare triple {7761#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {7761#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} is VALID [2022-02-20 23:41:32,903 INFO L290 TraceCheckUtils]: 27: Hoare triple {7774#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_677) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {7761#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_677) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} is VALID [2022-02-20 23:41:32,903 INFO L290 TraceCheckUtils]: 26: Hoare triple {7609#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {7774#(forall ((v_ArrVal_677 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_677) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} is VALID [2022-02-20 23:41:32,904 INFO L290 TraceCheckUtils]: 25: Hoare triple {7781#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {7609#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:32,904 INFO L290 TraceCheckUtils]: 24: Hoare triple {7785#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7781#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:32,905 INFO L290 TraceCheckUtils]: 23: Hoare triple {7785#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|)))} havoc main_#t~nondet10#1; {7785#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:32,905 INFO L290 TraceCheckUtils]: 22: Hoare triple {7785#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7785#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:32,906 INFO L290 TraceCheckUtils]: 21: Hoare triple {7591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7785#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 6) (< 5 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:32,906 INFO L290 TraceCheckUtils]: 20: Hoare triple {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:32,906 INFO L290 TraceCheckUtils]: 19: Hoare triple {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,907 INFO L290 TraceCheckUtils]: 18: Hoare triple {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,907 INFO L290 TraceCheckUtils]: 17: Hoare triple {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,908 INFO L290 TraceCheckUtils]: 16: Hoare triple {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7578#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,908 INFO L290 TraceCheckUtils]: 15: Hoare triple {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,908 INFO L290 TraceCheckUtils]: 14: Hoare triple {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,909 INFO L290 TraceCheckUtils]: 13: Hoare triple {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,909 INFO L290 TraceCheckUtils]: 12: Hoare triple {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7565#(and (= 1 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,909 INFO L290 TraceCheckUtils]: 11: Hoare triple {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet10#1; {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:32,910 INFO L290 TraceCheckUtils]: 10: Hoare triple {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:32,910 INFO L290 TraceCheckUtils]: 9: Hoare triple {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:32,910 INFO L290 TraceCheckUtils]: 8: Hoare triple {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {7552#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:32,911 INFO L290 TraceCheckUtils]: 7: Hoare triple {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,911 INFO L290 TraceCheckUtils]: 6: Hoare triple {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,911 INFO L290 TraceCheckUtils]: 5: Hoare triple {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,912 INFO L290 TraceCheckUtils]: 4: Hoare triple {7506#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {7539#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:32,912 INFO L290 TraceCheckUtils]: 3: Hoare triple {7506#true} assume !(main_~length2~0#1 < 1); {7506#true} is VALID [2022-02-20 23:41:32,912 INFO L290 TraceCheckUtils]: 2: Hoare triple {7506#true} assume !(main_~length1~0#1 < 1); {7506#true} is VALID [2022-02-20 23:41:32,912 INFO L290 TraceCheckUtils]: 1: Hoare triple {7506#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {7506#true} is VALID [2022-02-20 23:41:32,912 INFO L290 TraceCheckUtils]: 0: Hoare triple {7506#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7506#true} is VALID [2022-02-20 23:41:32,913 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 11 proven. 46 refuted. 0 times theorem prover too weak. 0 trivial. 54 not checked. [2022-02-20 23:41:32,913 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1364500817] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:32,913 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:32,913 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 19, 19] total 37 [2022-02-20 23:41:32,913 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1633292661] [2022-02-20 23:41:32,913 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:32,913 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 37 states have (on average 2.945945945945946) internal successors, (109), 37 states have internal predecessors, (109), 0 states have call successors, (0), 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:41:32,914 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:32,914 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 37 states, 37 states have (on average 2.945945945945946) internal successors, (109), 37 states have internal predecessors, (109), 0 states have call successors, (0), 0 states have call 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,999 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 105 inductive. 0 not inductive. 4 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:32,999 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 37 states [2022-02-20 23:41:32,999 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:33,000 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 37 interpolants. [2022-02-20 23:41:33,000 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=96, Invalid=852, Unknown=6, NotChecked=378, Total=1332 [2022-02-20 23:41:33,001 INFO L87 Difference]: Start difference. First operand 56 states and 57 transitions. Second operand has 37 states, 37 states have (on average 2.945945945945946) internal successors, (109), 37 states have internal predecessors, (109), 0 states have call successors, (0), 0 states have call 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:34,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:34,340 INFO L93 Difference]: Finished difference Result 88 states and 89 transitions. [2022-02-20 23:41:34,340 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-02-20 23:41:34,340 INFO L78 Accepts]: Start accepts. Automaton has has 37 states, 37 states have (on average 2.945945945945946) internal successors, (109), 37 states have internal predecessors, (109), 0 states have call successors, (0), 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:41:34,340 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:34,340 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 37 states have (on average 2.945945945945946) internal successors, (109), 37 states have internal predecessors, (109), 0 states have call successors, (0), 0 states have call 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:34,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 68 transitions. [2022-02-20 23:41:34,343 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 37 states have (on average 2.945945945945946) internal successors, (109), 37 states have internal predecessors, (109), 0 states have call successors, (0), 0 states have call 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:34,344 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 68 transitions. [2022-02-20 23:41:34,344 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 23 states and 68 transitions. [2022-02-20 23:41:34,397 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 67 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:34,397 INFO L225 Difference]: With dead ends: 88 [2022-02-20 23:41:34,397 INFO L226 Difference]: Without dead ends: 63 [2022-02-20 23:41:34,398 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 140 GetRequests, 87 SyntacticMatches, 10 SemanticMatches, 43 ConstructedPredicates, 6 IntricatePredicates, 0 DeprecatedPredicates, 222 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=149, Invalid=1351, Unknown=6, NotChecked=474, Total=1980 [2022-02-20 23:41:34,398 INFO L933 BasicCegarLoop]: 17 mSDtfsCounter, 24 mSDsluCounter, 354 mSDsCounter, 0 mSdLazyCounter, 719 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 371 SdHoareTripleChecker+Invalid, 1066 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 719 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 338 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:34,398 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 371 Invalid, 1066 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 719 Invalid, 0 Unknown, 338 Unchecked, 0.5s Time] [2022-02-20 23:41:34,399 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-02-20 23:41:34,399 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 60. [2022-02-20 23:41:34,399 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:34,399 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 60 states, 58 states have (on average 1.0517241379310345) internal successors, (61), 59 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call 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:34,399 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 60 states, 58 states have (on average 1.0517241379310345) internal successors, (61), 59 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call 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:34,400 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 60 states, 58 states have (on average 1.0517241379310345) internal successors, (61), 59 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call 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:34,400 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:34,400 INFO L93 Difference]: Finished difference Result 63 states and 64 transitions. [2022-02-20 23:41:34,400 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 64 transitions. [2022-02-20 23:41:34,400 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:34,400 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:34,400 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 58 states have (on average 1.0517241379310345) internal successors, (61), 59 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 63 states. [2022-02-20 23:41:34,402 INFO L87 Difference]: Start difference. First operand has 60 states, 58 states have (on average 1.0517241379310345) internal successors, (61), 59 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 63 states. [2022-02-20 23:41:34,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:34,402 INFO L93 Difference]: Finished difference Result 63 states and 64 transitions. [2022-02-20 23:41:34,402 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 64 transitions. [2022-02-20 23:41:34,402 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:34,403 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:34,403 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:34,403 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:34,403 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 58 states have (on average 1.0517241379310345) internal successors, (61), 59 states have internal predecessors, (61), 0 states have call successors, (0), 0 states have call 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:34,403 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 61 transitions. [2022-02-20 23:41:34,403 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 61 transitions. Word has length 53 [2022-02-20 23:41:34,403 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:34,403 INFO L470 AbstractCegarLoop]: Abstraction has 60 states and 61 transitions. [2022-02-20 23:41:34,403 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 37 states, 37 states have (on average 2.945945945945946) internal successors, (109), 37 states have internal predecessors, (109), 0 states have call successors, (0), 0 states have call 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:34,404 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 61 transitions. [2022-02-20 23:41:34,404 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-02-20 23:41:34,404 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:34,404 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:34,428 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:41:34,604 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable28,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:34,604 INFO L402 AbstractCegarLoop]: === Iteration 30 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:34,605 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:34,605 INFO L85 PathProgramCache]: Analyzing trace with hash -795904464, now seen corresponding path program 8 times [2022-02-20 23:41:34,605 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:34,605 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [566990289] [2022-02-20 23:41:34,605 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:34,605 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:34,633 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:34,857 INFO L290 TraceCheckUtils]: 0: Hoare triple {8152#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8152#true} is VALID [2022-02-20 23:41:34,857 INFO L290 TraceCheckUtils]: 1: Hoare triple {8152#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {8152#true} is VALID [2022-02-20 23:41:34,857 INFO L290 TraceCheckUtils]: 2: Hoare triple {8152#true} assume !(main_~length1~0#1 < 1); {8152#true} is VALID [2022-02-20 23:41:34,857 INFO L290 TraceCheckUtils]: 3: Hoare triple {8152#true} assume !(main_~length2~0#1 < 1); {8152#true} is VALID [2022-02-20 23:41:34,858 INFO L290 TraceCheckUtils]: 4: Hoare triple {8152#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {8154#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,858 INFO L290 TraceCheckUtils]: 5: Hoare triple {8154#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8154#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,859 INFO L290 TraceCheckUtils]: 6: Hoare triple {8154#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8154#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,859 INFO L290 TraceCheckUtils]: 7: Hoare triple {8154#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {8154#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,860 INFO L290 TraceCheckUtils]: 8: Hoare triple {8154#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8155#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,860 INFO L290 TraceCheckUtils]: 9: Hoare triple {8155#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8155#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,861 INFO L290 TraceCheckUtils]: 10: Hoare triple {8155#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8155#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,861 INFO L290 TraceCheckUtils]: 11: Hoare triple {8155#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {8155#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,861 INFO L290 TraceCheckUtils]: 12: Hoare triple {8155#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8156#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,862 INFO L290 TraceCheckUtils]: 13: Hoare triple {8156#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8156#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,862 INFO L290 TraceCheckUtils]: 14: Hoare triple {8156#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8156#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,863 INFO L290 TraceCheckUtils]: 15: Hoare triple {8156#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {8156#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,863 INFO L290 TraceCheckUtils]: 16: Hoare triple {8156#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8157#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,864 INFO L290 TraceCheckUtils]: 17: Hoare triple {8157#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8157#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,864 INFO L290 TraceCheckUtils]: 18: Hoare triple {8157#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8157#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,865 INFO L290 TraceCheckUtils]: 19: Hoare triple {8157#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {8157#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,865 INFO L290 TraceCheckUtils]: 20: Hoare triple {8157#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8158#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {8158#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8158#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,866 INFO L290 TraceCheckUtils]: 22: Hoare triple {8158#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8158#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,866 INFO L290 TraceCheckUtils]: 23: Hoare triple {8158#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {8158#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:34,867 INFO L290 TraceCheckUtils]: 24: Hoare triple {8158#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8159#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:34,867 INFO L290 TraceCheckUtils]: 25: Hoare triple {8159#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:34,868 INFO L290 TraceCheckUtils]: 26: Hoare triple {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:34,868 INFO L290 TraceCheckUtils]: 27: Hoare triple {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:34,869 INFO L290 TraceCheckUtils]: 28: Hoare triple {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:34,869 INFO L290 TraceCheckUtils]: 29: Hoare triple {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:34,869 INFO L290 TraceCheckUtils]: 30: Hoare triple {8160#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {8161#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:34,870 INFO L290 TraceCheckUtils]: 31: Hoare triple {8161#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {8162#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,870 INFO L290 TraceCheckUtils]: 32: Hoare triple {8162#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8162#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,871 INFO L290 TraceCheckUtils]: 33: Hoare triple {8162#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8162#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,871 INFO L290 TraceCheckUtils]: 34: Hoare triple {8162#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8162#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,871 INFO L290 TraceCheckUtils]: 35: Hoare triple {8162#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,872 INFO L290 TraceCheckUtils]: 36: Hoare triple {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,872 INFO L290 TraceCheckUtils]: 37: Hoare triple {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,873 INFO L290 TraceCheckUtils]: 38: Hoare triple {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,873 INFO L290 TraceCheckUtils]: 39: Hoare triple {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,874 INFO L290 TraceCheckUtils]: 40: Hoare triple {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,874 INFO L290 TraceCheckUtils]: 41: Hoare triple {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,874 INFO L290 TraceCheckUtils]: 42: Hoare triple {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,875 INFO L290 TraceCheckUtils]: 43: Hoare triple {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,875 INFO L290 TraceCheckUtils]: 44: Hoare triple {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,876 INFO L290 TraceCheckUtils]: 45: Hoare triple {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,876 INFO L290 TraceCheckUtils]: 46: Hoare triple {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,877 INFO L290 TraceCheckUtils]: 47: Hoare triple {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,877 INFO L290 TraceCheckUtils]: 48: Hoare triple {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,878 INFO L290 TraceCheckUtils]: 49: Hoare triple {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,878 INFO L290 TraceCheckUtils]: 50: Hoare triple {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,879 INFO L290 TraceCheckUtils]: 51: Hoare triple {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,879 INFO L290 TraceCheckUtils]: 52: Hoare triple {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,880 INFO L290 TraceCheckUtils]: 53: Hoare triple {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,880 INFO L290 TraceCheckUtils]: 54: Hoare triple {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:34,880 INFO L290 TraceCheckUtils]: 55: Hoare triple {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8168#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:34,881 INFO L290 TraceCheckUtils]: 56: Hoare triple {8168#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {8153#false} is VALID [2022-02-20 23:41:34,881 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 28 proven. 104 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:34,881 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:34,881 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [566990289] [2022-02-20 23:41:34,881 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [566990289] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:34,881 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1942876] [2022-02-20 23:41:34,881 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:41:34,882 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:34,882 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:34,882 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:41:34,883 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:41:34,989 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:41:34,990 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:34,992 INFO L263 TraceCheckSpWp]: Trace formula consists of 303 conjuncts, 42 conjunts are in the unsatisfiable core [2022-02-20 23:41:35,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:35,004 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:35,468 INFO L290 TraceCheckUtils]: 0: Hoare triple {8152#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8152#true} is VALID [2022-02-20 23:41:35,468 INFO L290 TraceCheckUtils]: 1: Hoare triple {8152#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {8152#true} is VALID [2022-02-20 23:41:35,469 INFO L290 TraceCheckUtils]: 2: Hoare triple {8152#true} assume !(main_~length1~0#1 < 1); {8152#true} is VALID [2022-02-20 23:41:35,469 INFO L290 TraceCheckUtils]: 3: Hoare triple {8152#true} assume !(main_~length2~0#1 < 1); {8152#true} is VALID [2022-02-20 23:41:35,469 INFO L290 TraceCheckUtils]: 4: Hoare triple {8152#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,470 INFO L290 TraceCheckUtils]: 5: Hoare triple {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,470 INFO L290 TraceCheckUtils]: 6: Hoare triple {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,470 INFO L290 TraceCheckUtils]: 7: Hoare triple {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,471 INFO L290 TraceCheckUtils]: 8: Hoare triple {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,471 INFO L290 TraceCheckUtils]: 9: Hoare triple {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,471 INFO L290 TraceCheckUtils]: 10: Hoare triple {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,471 INFO L290 TraceCheckUtils]: 11: Hoare triple {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,472 INFO L290 TraceCheckUtils]: 12: Hoare triple {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,472 INFO L290 TraceCheckUtils]: 13: Hoare triple {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,472 INFO L290 TraceCheckUtils]: 14: Hoare triple {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,472 INFO L290 TraceCheckUtils]: 15: Hoare triple {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,473 INFO L290 TraceCheckUtils]: 16: Hoare triple {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,473 INFO L290 TraceCheckUtils]: 17: Hoare triple {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,473 INFO L290 TraceCheckUtils]: 18: Hoare triple {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,474 INFO L290 TraceCheckUtils]: 19: Hoare triple {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,474 INFO L290 TraceCheckUtils]: 20: Hoare triple {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,474 INFO L290 TraceCheckUtils]: 21: Hoare triple {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,474 INFO L290 TraceCheckUtils]: 22: Hoare triple {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,475 INFO L290 TraceCheckUtils]: 23: Hoare triple {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,475 INFO L290 TraceCheckUtils]: 24: Hoare triple {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8249#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:35,475 INFO L290 TraceCheckUtils]: 25: Hoare triple {8249#(<= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:35,476 INFO L290 TraceCheckUtils]: 26: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:35,476 INFO L290 TraceCheckUtils]: 27: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet10#1; {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:35,476 INFO L290 TraceCheckUtils]: 28: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:35,477 INFO L290 TraceCheckUtils]: 29: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:35,477 INFO L290 TraceCheckUtils]: 30: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {8269#(< (+ 6 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))} is VALID [2022-02-20 23:41:35,478 INFO L290 TraceCheckUtils]: 31: Hoare triple {8269#(< (+ 6 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {8273#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} is VALID [2022-02-20 23:41:35,478 INFO L290 TraceCheckUtils]: 32: Hoare triple {8273#(< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8277#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,478 INFO L290 TraceCheckUtils]: 33: Hoare triple {8277#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8277#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,479 INFO L290 TraceCheckUtils]: 34: Hoare triple {8277#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8277#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,479 INFO L290 TraceCheckUtils]: 35: Hoare triple {8277#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (< (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,480 INFO L290 TraceCheckUtils]: 36: Hoare triple {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,480 INFO L290 TraceCheckUtils]: 37: Hoare triple {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,480 INFO L290 TraceCheckUtils]: 38: Hoare triple {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,481 INFO L290 TraceCheckUtils]: 39: Hoare triple {8163#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,481 INFO L290 TraceCheckUtils]: 40: Hoare triple {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,482 INFO L290 TraceCheckUtils]: 41: Hoare triple {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,482 INFO L290 TraceCheckUtils]: 42: Hoare triple {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,483 INFO L290 TraceCheckUtils]: 43: Hoare triple {8164#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,483 INFO L290 TraceCheckUtils]: 44: Hoare triple {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,483 INFO L290 TraceCheckUtils]: 45: Hoare triple {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,484 INFO L290 TraceCheckUtils]: 46: Hoare triple {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,484 INFO L290 TraceCheckUtils]: 47: Hoare triple {8165#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,485 INFO L290 TraceCheckUtils]: 48: Hoare triple {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,485 INFO L290 TraceCheckUtils]: 49: Hoare triple {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,485 INFO L290 TraceCheckUtils]: 50: Hoare triple {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,486 INFO L290 TraceCheckUtils]: 51: Hoare triple {8166#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,486 INFO L290 TraceCheckUtils]: 52: Hoare triple {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,487 INFO L290 TraceCheckUtils]: 53: Hoare triple {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,487 INFO L290 TraceCheckUtils]: 54: Hoare triple {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:35,487 INFO L290 TraceCheckUtils]: 55: Hoare triple {8167#(and (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8168#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:35,488 INFO L290 TraceCheckUtils]: 56: Hoare triple {8168#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {8153#false} is VALID [2022-02-20 23:41:35,488 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 45 proven. 87 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:35,488 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:35,909 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:36,048 INFO L290 TraceCheckUtils]: 56: Hoare triple {8350#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {8153#false} is VALID [2022-02-20 23:41:36,049 INFO L290 TraceCheckUtils]: 55: Hoare triple {8354#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8350#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,049 INFO L290 TraceCheckUtils]: 54: Hoare triple {8354#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8354#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,049 INFO L290 TraceCheckUtils]: 53: Hoare triple {8354#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8354#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,050 INFO L290 TraceCheckUtils]: 52: Hoare triple {8354#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8354#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,050 INFO L290 TraceCheckUtils]: 51: Hoare triple {8367#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8354#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,051 INFO L290 TraceCheckUtils]: 50: Hoare triple {8367#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8367#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)))} is VALID [2022-02-20 23:41:36,051 INFO L290 TraceCheckUtils]: 49: Hoare triple {8367#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8367#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)))} is VALID [2022-02-20 23:41:36,052 INFO L290 TraceCheckUtils]: 48: Hoare triple {8367#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8367#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)))} is VALID [2022-02-20 23:41:36,052 INFO L290 TraceCheckUtils]: 47: Hoare triple {8380#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8367#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)))} is VALID [2022-02-20 23:41:36,052 INFO L290 TraceCheckUtils]: 46: Hoare triple {8380#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8380#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,053 INFO L290 TraceCheckUtils]: 45: Hoare triple {8380#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8380#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,053 INFO L290 TraceCheckUtils]: 44: Hoare triple {8380#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8380#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,054 INFO L290 TraceCheckUtils]: 43: Hoare triple {8393#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8380#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,054 INFO L290 TraceCheckUtils]: 42: Hoare triple {8393#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8393#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,055 INFO L290 TraceCheckUtils]: 41: Hoare triple {8393#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8393#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,055 INFO L290 TraceCheckUtils]: 40: Hoare triple {8393#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8393#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,056 INFO L290 TraceCheckUtils]: 39: Hoare triple {8406#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8393#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,056 INFO L290 TraceCheckUtils]: 38: Hoare triple {8406#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8406#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,056 INFO L290 TraceCheckUtils]: 37: Hoare triple {8406#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8406#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,057 INFO L290 TraceCheckUtils]: 36: Hoare triple {8406#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8406#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,057 INFO L290 TraceCheckUtils]: 35: Hoare triple {8419#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8406#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,058 INFO L290 TraceCheckUtils]: 34: Hoare triple {8419#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8419#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,058 INFO L290 TraceCheckUtils]: 33: Hoare triple {8419#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8419#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,058 INFO L290 TraceCheckUtils]: 32: Hoare triple {8429#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8419#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,059 INFO L290 TraceCheckUtils]: 31: Hoare triple {8433#(or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {8429#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:36,059 INFO L290 TraceCheckUtils]: 30: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {8433#(or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:36,060 INFO L290 TraceCheckUtils]: 29: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:36,060 INFO L290 TraceCheckUtils]: 28: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:36,060 INFO L290 TraceCheckUtils]: 27: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet10#1; {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:36,060 INFO L290 TraceCheckUtils]: 26: Hoare triple {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:36,061 INFO L290 TraceCheckUtils]: 25: Hoare triple {8249#(<= 5 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8253#(< 6 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:41:36,061 INFO L290 TraceCheckUtils]: 24: Hoare triple {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8249#(<= 5 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,061 INFO L290 TraceCheckUtils]: 23: Hoare triple {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,062 INFO L290 TraceCheckUtils]: 22: Hoare triple {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,062 INFO L290 TraceCheckUtils]: 21: Hoare triple {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,062 INFO L290 TraceCheckUtils]: 20: Hoare triple {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8236#(<= 4 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,063 INFO L290 TraceCheckUtils]: 19: Hoare triple {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,063 INFO L290 TraceCheckUtils]: 18: Hoare triple {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,063 INFO L290 TraceCheckUtils]: 17: Hoare triple {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,063 INFO L290 TraceCheckUtils]: 16: Hoare triple {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8223#(<= 3 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,064 INFO L290 TraceCheckUtils]: 15: Hoare triple {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,064 INFO L290 TraceCheckUtils]: 14: Hoare triple {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,064 INFO L290 TraceCheckUtils]: 13: Hoare triple {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,065 INFO L290 TraceCheckUtils]: 12: Hoare triple {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8210#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,065 INFO L290 TraceCheckUtils]: 11: Hoare triple {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,065 INFO L290 TraceCheckUtils]: 10: Hoare triple {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,065 INFO L290 TraceCheckUtils]: 9: Hoare triple {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,066 INFO L290 TraceCheckUtils]: 8: Hoare triple {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8197#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,066 INFO L290 TraceCheckUtils]: 7: Hoare triple {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet10#1; {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,066 INFO L290 TraceCheckUtils]: 6: Hoare triple {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,066 INFO L290 TraceCheckUtils]: 5: Hoare triple {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,067 INFO L290 TraceCheckUtils]: 4: Hoare triple {8152#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {8184#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:41:36,067 INFO L290 TraceCheckUtils]: 3: Hoare triple {8152#true} assume !(main_~length2~0#1 < 1); {8152#true} is VALID [2022-02-20 23:41:36,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {8152#true} assume !(main_~length1~0#1 < 1); {8152#true} is VALID [2022-02-20 23:41:36,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {8152#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {8152#true} is VALID [2022-02-20 23:41:36,067 INFO L290 TraceCheckUtils]: 0: Hoare triple {8152#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8152#true} is VALID [2022-02-20 23:41:36,067 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 45 proven. 87 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:36,068 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1942876] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:36,068 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:36,068 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 17, 17] total 35 [2022-02-20 23:41:36,068 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1673106016] [2022-02-20 23:41:36,068 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:36,068 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 35 states have (on average 3.3142857142857145) internal successors, (116), 36 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 57 [2022-02-20 23:41:36,069 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:36,069 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 36 states, 35 states have (on average 3.3142857142857145) internal successors, (116), 36 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:41:36,160 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:41:36,161 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 36 states [2022-02-20 23:41:36,161 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:36,161 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 36 interpolants. [2022-02-20 23:41:36,161 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=165, Invalid=1095, Unknown=0, NotChecked=0, Total=1260 [2022-02-20 23:41:36,162 INFO L87 Difference]: Start difference. First operand 60 states and 61 transitions. Second operand has 36 states, 35 states have (on average 3.3142857142857145) internal successors, (116), 36 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:41:37,352 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:37,352 INFO L93 Difference]: Finished difference Result 67 states and 68 transitions. [2022-02-20 23:41:37,352 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:41:37,353 INFO L78 Accepts]: Start accepts. Automaton has has 36 states, 35 states have (on average 3.3142857142857145) internal successors, (116), 36 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 57 [2022-02-20 23:41:37,353 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:37,353 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 3.3142857142857145) internal successors, (116), 36 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:41:37,353 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 69 transitions. [2022-02-20 23:41:37,354 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 35 states have (on average 3.3142857142857145) internal successors, (116), 36 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:41:37,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 69 transitions. [2022-02-20 23:41:37,354 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 69 transitions. [2022-02-20 23:41:37,410 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:41:37,411 INFO L225 Difference]: With dead ends: 67 [2022-02-20 23:41:37,411 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 23:41:37,411 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 92 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:41:37,412 INFO L933 BasicCegarLoop]: 18 mSDtfsCounter, 216 mSDsluCounter, 240 mSDsCounter, 0 mSdLazyCounter, 660 mSolverCounterSat, 56 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 216 SdHoareTripleChecker+Valid, 258 SdHoareTripleChecker+Invalid, 716 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 56 IncrementalHoareTripleChecker+Valid, 660 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:37,412 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [216 Valid, 258 Invalid, 716 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [56 Valid, 660 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:41:37,412 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 23:41:37,413 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 63. [2022-02-20 23:41:37,413 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:37,413 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 63 states, 61 states have (on average 1.0491803278688525) internal successors, (64), 62 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call 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,413 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 63 states, 61 states have (on average 1.0491803278688525) internal successors, (64), 62 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call 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,413 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 63 states, 61 states have (on average 1.0491803278688525) internal successors, (64), 62 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call 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 L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:37,414 INFO L93 Difference]: Finished difference Result 67 states and 68 transitions. [2022-02-20 23:41:37,414 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 68 transitions. [2022-02-20 23:41:37,414 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 L74 IsIncluded]: Start isIncluded. First operand has 63 states, 61 states have (on average 1.0491803278688525) internal successors, (64), 62 states have internal predecessors, (64), 0 states have call successors, (0), 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 67 states. [2022-02-20 23:41:37,415 INFO L87 Difference]: Start difference. First operand has 63 states, 61 states have (on average 1.0491803278688525) internal successors, (64), 62 states have internal predecessors, (64), 0 states have call successors, (0), 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 67 states. [2022-02-20 23:41:37,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:37,415 INFO L93 Difference]: Finished difference Result 67 states and 68 transitions. [2022-02-20 23:41:37,415 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 68 transitions. [2022-02-20 23:41:37,416 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:37,416 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:37,416 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:37,416 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:37,416 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 61 states have (on average 1.0491803278688525) internal successors, (64), 62 states have internal predecessors, (64), 0 states have call successors, (0), 0 states have call 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,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 64 transitions. [2022-02-20 23:41:37,417 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 64 transitions. Word has length 57 [2022-02-20 23:41:37,417 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:37,417 INFO L470 AbstractCegarLoop]: Abstraction has 63 states and 64 transitions. [2022-02-20 23:41:37,417 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 36 states, 35 states have (on average 3.3142857142857145) internal successors, (116), 36 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:41:37,417 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 64 transitions. [2022-02-20 23:41:37,417 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-02-20 23:41:37,418 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:37,418 INFO L514 BasicCegarLoop]: trace histogram [7, 6, 6, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:37,479 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:37,623 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:37,624 INFO L402 AbstractCegarLoop]: === Iteration 31 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:37,624 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:37,624 INFO L85 PathProgramCache]: Analyzing trace with hash 1096765379, now seen corresponding path program 7 times [2022-02-20 23:41:37,624 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:37,624 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1067321514] [2022-02-20 23:41:37,624 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:37,624 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:37,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:37,889 INFO L290 TraceCheckUtils]: 0: Hoare triple {8808#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8808#true} is VALID [2022-02-20 23:41:37,890 INFO L290 TraceCheckUtils]: 1: Hoare triple {8808#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {8808#true} is VALID [2022-02-20 23:41:37,890 INFO L290 TraceCheckUtils]: 2: Hoare triple {8808#true} assume !(main_~length1~0#1 < 1); {8808#true} is VALID [2022-02-20 23:41:37,890 INFO L290 TraceCheckUtils]: 3: Hoare triple {8808#true} assume !(main_~length2~0#1 < 1); {8808#true} is VALID [2022-02-20 23:41:37,891 INFO L290 TraceCheckUtils]: 4: Hoare triple {8808#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {8810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:37,891 INFO L290 TraceCheckUtils]: 5: Hoare triple {8810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:37,892 INFO L290 TraceCheckUtils]: 6: Hoare triple {8810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:37,892 INFO L290 TraceCheckUtils]: 7: Hoare triple {8810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {8810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:37,893 INFO L290 TraceCheckUtils]: 8: Hoare triple {8810#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8811#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,893 INFO L290 TraceCheckUtils]: 9: Hoare triple {8811#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8811#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,894 INFO L290 TraceCheckUtils]: 10: Hoare triple {8811#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8811#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,894 INFO L290 TraceCheckUtils]: 11: Hoare triple {8811#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {8811#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {8811#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8812#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,895 INFO L290 TraceCheckUtils]: 13: Hoare triple {8812#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8812#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,895 INFO L290 TraceCheckUtils]: 14: Hoare triple {8812#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8812#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,896 INFO L290 TraceCheckUtils]: 15: Hoare triple {8812#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {8812#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,896 INFO L290 TraceCheckUtils]: 16: Hoare triple {8812#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8813#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,897 INFO L290 TraceCheckUtils]: 17: Hoare triple {8813#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8813#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,897 INFO L290 TraceCheckUtils]: 18: Hoare triple {8813#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8813#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,898 INFO L290 TraceCheckUtils]: 19: Hoare triple {8813#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {8813#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,898 INFO L290 TraceCheckUtils]: 20: Hoare triple {8813#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8814#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,898 INFO L290 TraceCheckUtils]: 21: Hoare triple {8814#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8814#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,899 INFO L290 TraceCheckUtils]: 22: Hoare triple {8814#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8814#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,899 INFO L290 TraceCheckUtils]: 23: Hoare triple {8814#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {8814#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,900 INFO L290 TraceCheckUtils]: 24: Hoare triple {8814#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8815#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:37,901 INFO L290 TraceCheckUtils]: 25: Hoare triple {8815#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,901 INFO L290 TraceCheckUtils]: 26: Hoare triple {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,901 INFO L290 TraceCheckUtils]: 27: Hoare triple {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,902 INFO L290 TraceCheckUtils]: 28: Hoare triple {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,902 INFO L290 TraceCheckUtils]: 29: Hoare triple {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,903 INFO L290 TraceCheckUtils]: 30: Hoare triple {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:37,903 INFO L290 TraceCheckUtils]: 31: Hoare triple {8816#(and (<= 7 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,904 INFO L290 TraceCheckUtils]: 32: Hoare triple {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,904 INFO L290 TraceCheckUtils]: 33: Hoare triple {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,904 INFO L290 TraceCheckUtils]: 34: Hoare triple {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,905 INFO L290 TraceCheckUtils]: 35: Hoare triple {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8818#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,905 INFO L290 TraceCheckUtils]: 36: Hoare triple {8818#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8818#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,906 INFO L290 TraceCheckUtils]: 37: Hoare triple {8818#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8818#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,906 INFO L290 TraceCheckUtils]: 38: Hoare triple {8818#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8818#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,907 INFO L290 TraceCheckUtils]: 39: Hoare triple {8818#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8819#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,907 INFO L290 TraceCheckUtils]: 40: Hoare triple {8819#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8819#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,908 INFO L290 TraceCheckUtils]: 41: Hoare triple {8819#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8819#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,908 INFO L290 TraceCheckUtils]: 42: Hoare triple {8819#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8819#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,909 INFO L290 TraceCheckUtils]: 43: Hoare triple {8819#(and (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8820#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,909 INFO L290 TraceCheckUtils]: 44: Hoare triple {8820#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8820#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,910 INFO L290 TraceCheckUtils]: 45: Hoare triple {8820#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8820#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,910 INFO L290 TraceCheckUtils]: 46: Hoare triple {8820#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8820#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,911 INFO L290 TraceCheckUtils]: 47: Hoare triple {8820#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8821#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,911 INFO L290 TraceCheckUtils]: 48: Hoare triple {8821#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8821#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,912 INFO L290 TraceCheckUtils]: 49: Hoare triple {8821#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8821#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,912 INFO L290 TraceCheckUtils]: 50: Hoare triple {8821#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8821#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,913 INFO L290 TraceCheckUtils]: 51: Hoare triple {8821#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8822#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,913 INFO L290 TraceCheckUtils]: 52: Hoare triple {8822#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8822#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,914 INFO L290 TraceCheckUtils]: 53: Hoare triple {8822#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8822#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,914 INFO L290 TraceCheckUtils]: 54: Hoare triple {8822#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8822#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:37,914 INFO L290 TraceCheckUtils]: 55: Hoare triple {8822#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8823#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,915 INFO L290 TraceCheckUtils]: 56: Hoare triple {8823#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8823#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:37,915 INFO L290 TraceCheckUtils]: 57: Hoare triple {8823#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {8809#false} is VALID [2022-02-20 23:41:37,916 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 28 proven. 110 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:37,916 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:37,916 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1067321514] [2022-02-20 23:41:37,916 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1067321514] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:37,916 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1063757379] [2022-02-20 23:41:37,916 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-02-20 23:41:37,917 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:37,917 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:37,918 INFO L229 MonitoredProcess]: Starting monitored process 17 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,934 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-02-20 23:41:38,034 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:38,036 INFO L263 TraceCheckSpWp]: Trace formula consists of 309 conjuncts, 50 conjunts are in the unsatisfiable core [2022-02-20 23:41:38,053 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:38,053 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:38,142 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:41:38,143 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 9 treesize of output 11 [2022-02-20 23:41:38,151 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 10 treesize of output 8 [2022-02-20 23:41:38,871 INFO L290 TraceCheckUtils]: 0: Hoare triple {8808#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8808#true} is VALID [2022-02-20 23:41:38,871 INFO L290 TraceCheckUtils]: 1: Hoare triple {8808#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {8808#true} is VALID [2022-02-20 23:41:38,871 INFO L290 TraceCheckUtils]: 2: Hoare triple {8808#true} assume !(main_~length1~0#1 < 1); {8808#true} is VALID [2022-02-20 23:41:38,871 INFO L290 TraceCheckUtils]: 3: Hoare triple {8808#true} assume !(main_~length2~0#1 < 1); {8808#true} is VALID [2022-02-20 23:41:38,872 INFO L290 TraceCheckUtils]: 4: Hoare triple {8808#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {8839#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,872 INFO L290 TraceCheckUtils]: 5: Hoare triple {8839#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8839#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,873 INFO L290 TraceCheckUtils]: 6: Hoare triple {8839#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8839#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,873 INFO L290 TraceCheckUtils]: 7: Hoare triple {8839#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {8839#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,874 INFO L290 TraceCheckUtils]: 8: Hoare triple {8839#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8852#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,876 INFO L290 TraceCheckUtils]: 9: Hoare triple {8852#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8852#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,877 INFO L290 TraceCheckUtils]: 10: Hoare triple {8852#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8852#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,877 INFO L290 TraceCheckUtils]: 11: Hoare triple {8852#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {8852#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,878 INFO L290 TraceCheckUtils]: 12: Hoare triple {8852#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8865#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,878 INFO L290 TraceCheckUtils]: 13: Hoare triple {8865#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8865#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,879 INFO L290 TraceCheckUtils]: 14: Hoare triple {8865#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8865#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,879 INFO L290 TraceCheckUtils]: 15: Hoare triple {8865#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {8865#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,880 INFO L290 TraceCheckUtils]: 16: Hoare triple {8865#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8878#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,880 INFO L290 TraceCheckUtils]: 17: Hoare triple {8878#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8878#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,880 INFO L290 TraceCheckUtils]: 18: Hoare triple {8878#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8878#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,886 INFO L290 TraceCheckUtils]: 19: Hoare triple {8878#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {8878#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,887 INFO L290 TraceCheckUtils]: 20: Hoare triple {8878#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8891#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,887 INFO L290 TraceCheckUtils]: 21: Hoare triple {8891#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8891#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,888 INFO L290 TraceCheckUtils]: 22: Hoare triple {8891#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8891#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,888 INFO L290 TraceCheckUtils]: 23: Hoare triple {8891#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {8891#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:38,889 INFO L290 TraceCheckUtils]: 24: Hoare triple {8891#(and (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8904#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,890 INFO L290 TraceCheckUtils]: 25: Hoare triple {8904#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,890 INFO L290 TraceCheckUtils]: 26: Hoare triple {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,891 INFO L290 TraceCheckUtils]: 27: Hoare triple {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,891 INFO L290 TraceCheckUtils]: 28: Hoare triple {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,892 INFO L290 TraceCheckUtils]: 29: Hoare triple {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,892 INFO L290 TraceCheckUtils]: 30: Hoare triple {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:38,893 INFO L290 TraceCheckUtils]: 31: Hoare triple {8908#(and (< 6 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {8927#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,893 INFO L290 TraceCheckUtils]: 32: Hoare triple {8927#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8927#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,894 INFO L290 TraceCheckUtils]: 33: Hoare triple {8927#(and (<= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (< 6 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,894 INFO L290 TraceCheckUtils]: 34: Hoare triple {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,895 INFO L290 TraceCheckUtils]: 35: Hoare triple {8817#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8940#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,895 INFO L290 TraceCheckUtils]: 36: Hoare triple {8940#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8940#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,896 INFO L290 TraceCheckUtils]: 37: Hoare triple {8940#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8940#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,896 INFO L290 TraceCheckUtils]: 38: Hoare triple {8940#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8940#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,897 INFO L290 TraceCheckUtils]: 39: Hoare triple {8940#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8953#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,897 INFO L290 TraceCheckUtils]: 40: Hoare triple {8953#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8953#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,898 INFO L290 TraceCheckUtils]: 41: Hoare triple {8953#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8953#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,898 INFO L290 TraceCheckUtils]: 42: Hoare triple {8953#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8953#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,899 INFO L290 TraceCheckUtils]: 43: Hoare triple {8953#(and (= (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|) 1) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8966#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,899 INFO L290 TraceCheckUtils]: 44: Hoare triple {8966#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8966#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,899 INFO L290 TraceCheckUtils]: 45: Hoare triple {8966#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8966#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,900 INFO L290 TraceCheckUtils]: 46: Hoare triple {8966#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8966#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,900 INFO L290 TraceCheckUtils]: 47: Hoare triple {8966#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8979#(and (= 3 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,901 INFO L290 TraceCheckUtils]: 48: Hoare triple {8979#(and (= 3 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8979#(and (= 3 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,901 INFO L290 TraceCheckUtils]: 49: Hoare triple {8979#(and (= 3 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8979#(and (= 3 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,902 INFO L290 TraceCheckUtils]: 50: Hoare triple {8979#(and (= 3 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8979#(and (= 3 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,902 INFO L290 TraceCheckUtils]: 51: Hoare triple {8979#(and (= 3 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {8992#(and (= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,902 INFO L290 TraceCheckUtils]: 52: Hoare triple {8992#(and (= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {8992#(and (= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,903 INFO L290 TraceCheckUtils]: 53: Hoare triple {8992#(and (= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {8992#(and (= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,903 INFO L290 TraceCheckUtils]: 54: Hoare triple {8992#(and (= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {8992#(and (= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,904 INFO L290 TraceCheckUtils]: 55: Hoare triple {8992#(and (= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9005#(and (= 5 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,904 INFO L290 TraceCheckUtils]: 56: Hoare triple {9005#(and (= 5 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9005#(and (= 5 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:38,904 INFO L290 TraceCheckUtils]: 57: Hoare triple {9005#(and (= 5 (+ (- 1) |ULTIMATE.start_cstrcpy_~to#1.offset|)) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {8809#false} is VALID [2022-02-20 23:41:38,905 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 45 proven. 93 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:38,905 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:39,903 INFO L290 TraceCheckUtils]: 57: Hoare triple {9012#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {8809#false} is VALID [2022-02-20 23:41:39,904 INFO L290 TraceCheckUtils]: 56: Hoare triple {9012#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9012#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:39,904 INFO L290 TraceCheckUtils]: 55: Hoare triple {9019#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9012#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:39,904 INFO L290 TraceCheckUtils]: 54: Hoare triple {9019#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9019#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,905 INFO L290 TraceCheckUtils]: 53: Hoare triple {9019#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9019#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,905 INFO L290 TraceCheckUtils]: 52: Hoare triple {9019#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9019#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,906 INFO L290 TraceCheckUtils]: 51: Hoare triple {9032#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9019#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,906 INFO L290 TraceCheckUtils]: 50: Hoare triple {9032#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9032#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,907 INFO L290 TraceCheckUtils]: 49: Hoare triple {9032#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9032#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,907 INFO L290 TraceCheckUtils]: 48: Hoare triple {9032#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9032#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,908 INFO L290 TraceCheckUtils]: 47: Hoare triple {9045#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9032#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,908 INFO L290 TraceCheckUtils]: 46: Hoare triple {9045#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9045#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,908 INFO L290 TraceCheckUtils]: 45: Hoare triple {9045#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9045#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,909 INFO L290 TraceCheckUtils]: 44: Hoare triple {9045#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9045#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,909 INFO L290 TraceCheckUtils]: 43: Hoare triple {9058#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9045#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,910 INFO L290 TraceCheckUtils]: 42: Hoare triple {9058#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9058#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,910 INFO L290 TraceCheckUtils]: 41: Hoare triple {9058#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9058#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,910 INFO L290 TraceCheckUtils]: 40: Hoare triple {9058#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9058#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,911 INFO L290 TraceCheckUtils]: 39: Hoare triple {9071#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9058#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4)) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,911 INFO L290 TraceCheckUtils]: 38: Hoare triple {9071#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9071#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:39,912 INFO L290 TraceCheckUtils]: 37: Hoare triple {9071#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9071#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:39,912 INFO L290 TraceCheckUtils]: 36: Hoare triple {9071#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9071#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:39,913 INFO L290 TraceCheckUtils]: 35: Hoare triple {9084#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6)) (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9071#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 0 (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:39,913 INFO L290 TraceCheckUtils]: 34: Hoare triple {9084#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6)) (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9084#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6)) (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,913 INFO L290 TraceCheckUtils]: 33: Hoare triple {9091#(or (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9084#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6)) (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:39,914 INFO L290 TraceCheckUtils]: 32: Hoare triple {9091#(or (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9091#(or (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:39,914 INFO L290 TraceCheckUtils]: 31: Hoare triple {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {9091#(or (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcpy_~to#1.offset|)))} is VALID [2022-02-20 23:41:39,915 INFO L290 TraceCheckUtils]: 30: Hoare triple {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,915 INFO L290 TraceCheckUtils]: 29: Hoare triple {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,915 INFO L290 TraceCheckUtils]: 28: Hoare triple {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,916 INFO L290 TraceCheckUtils]: 27: Hoare triple {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,916 INFO L290 TraceCheckUtils]: 26: Hoare triple {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,916 INFO L290 TraceCheckUtils]: 25: Hoare triple {9117#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9098#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,917 INFO L290 TraceCheckUtils]: 24: Hoare triple {9121#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9117#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,917 INFO L290 TraceCheckUtils]: 23: Hoare triple {9121#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {9121#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,918 INFO L290 TraceCheckUtils]: 22: Hoare triple {9121#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9121#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,918 INFO L290 TraceCheckUtils]: 21: Hoare triple {9121#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9121#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,919 INFO L290 TraceCheckUtils]: 20: Hoare triple {9134#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9121#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,919 INFO L290 TraceCheckUtils]: 19: Hoare triple {9134#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {9134#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,919 INFO L290 TraceCheckUtils]: 18: Hoare triple {9134#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9134#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,920 INFO L290 TraceCheckUtils]: 17: Hoare triple {9134#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9134#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,920 INFO L290 TraceCheckUtils]: 16: Hoare triple {9147#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9134#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,921 INFO L290 TraceCheckUtils]: 15: Hoare triple {9147#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {9147#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,921 INFO L290 TraceCheckUtils]: 14: Hoare triple {9147#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9147#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,921 INFO L290 TraceCheckUtils]: 13: Hoare triple {9147#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9147#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,922 INFO L290 TraceCheckUtils]: 12: Hoare triple {9160#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9147#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,922 INFO L290 TraceCheckUtils]: 11: Hoare triple {9160#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} havoc main_#t~nondet10#1; {9160#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,923 INFO L290 TraceCheckUtils]: 10: Hoare triple {9160#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9160#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,923 INFO L290 TraceCheckUtils]: 9: Hoare triple {9160#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9160#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,923 INFO L290 TraceCheckUtils]: 8: Hoare triple {9173#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (+ 6 |ULTIMATE.start_main_~i~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9160#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 5 |ULTIMATE.start_main_~i~0#1|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0))} is VALID [2022-02-20 23:41:39,924 INFO L290 TraceCheckUtils]: 7: Hoare triple {9173#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (+ 6 |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet10#1; {9173#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (+ 6 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:39,924 INFO L290 TraceCheckUtils]: 6: Hoare triple {9173#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (+ 6 |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9173#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (+ 6 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:39,925 INFO L290 TraceCheckUtils]: 5: Hoare triple {9173#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (+ 6 |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9173#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (+ 6 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:39,925 INFO L290 TraceCheckUtils]: 4: Hoare triple {8808#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {9173#(or (<= (+ 7 |ULTIMATE.start_main_~nondetArea~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)) (< |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (+ 6 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:39,925 INFO L290 TraceCheckUtils]: 3: Hoare triple {8808#true} assume !(main_~length2~0#1 < 1); {8808#true} is VALID [2022-02-20 23:41:39,925 INFO L290 TraceCheckUtils]: 2: Hoare triple {8808#true} assume !(main_~length1~0#1 < 1); {8808#true} is VALID [2022-02-20 23:41:39,925 INFO L290 TraceCheckUtils]: 1: Hoare triple {8808#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {8808#true} is VALID [2022-02-20 23:41:39,926 INFO L290 TraceCheckUtils]: 0: Hoare triple {8808#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8808#true} is VALID [2022-02-20 23:41:39,926 INFO L134 CoverageAnalysis]: Checked inductivity of 138 backedges. 66 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:39,926 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1063757379] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:39,926 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:39,926 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 16, 16] total 44 [2022-02-20 23:41:39,926 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2079641340] [2022-02-20 23:41:39,926 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:39,927 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 44 states have (on average 3.75) internal successors, (165), 45 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 58 [2022-02-20 23:41:39,927 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:39,927 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 45 states, 44 states have (on average 3.75) internal successors, (165), 45 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:41:40,059 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:41:40,059 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 45 states [2022-02-20 23:41:40,059 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:40,060 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 45 interpolants. [2022-02-20 23:41:40,060 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=250, Invalid=1730, Unknown=0, NotChecked=0, Total=1980 [2022-02-20 23:41:40,060 INFO L87 Difference]: Start difference. First operand 63 states and 64 transitions. Second operand has 45 states, 44 states have (on average 3.75) internal successors, (165), 45 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:41:41,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:41,543 INFO L93 Difference]: Finished difference Result 66 states and 67 transitions. [2022-02-20 23:41:41,543 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 23:41:41,543 INFO L78 Accepts]: Start accepts. Automaton has has 45 states, 44 states have (on average 3.75) internal successors, (165), 45 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 58 [2022-02-20 23:41:41,545 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:41,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 44 states have (on average 3.75) internal successors, (165), 45 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:41:41,546 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 68 transitions. [2022-02-20 23:41:41,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 44 states have (on average 3.75) internal successors, (165), 45 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:41:41,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 68 transitions. [2022-02-20 23:41:41,547 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 68 transitions. [2022-02-20 23:41:41,614 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:41,614 INFO L225 Difference]: With dead ends: 66 [2022-02-20 23:41:41,614 INFO L226 Difference]: Without dead ends: 66 [2022-02-20 23:41:41,615 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 143 GetRequests, 85 SyntacticMatches, 1 SemanticMatches, 57 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 681 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=627, Invalid=2795, Unknown=0, NotChecked=0, Total=3422 [2022-02-20 23:41:41,615 INFO L933 BasicCegarLoop]: 18 mSDtfsCounter, 171 mSDsluCounter, 218 mSDsCounter, 0 mSdLazyCounter, 626 mSolverCounterSat, 52 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 171 SdHoareTripleChecker+Valid, 236 SdHoareTripleChecker+Invalid, 678 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 52 IncrementalHoareTripleChecker+Valid, 626 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:41,615 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [171 Valid, 236 Invalid, 678 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [52 Valid, 626 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-02-20 23:41:41,616 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-02-20 23:41:41,616 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 64. [2022-02-20 23:41:41,616 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:41,616 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 64 states, 62 states have (on average 1.0483870967741935) 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:41:41,616 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 64 states, 62 states have (on average 1.0483870967741935) 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:41:41,617 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 64 states, 62 states have (on average 1.0483870967741935) 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:41:41,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:41,617 INFO L93 Difference]: Finished difference Result 66 states and 67 transitions. [2022-02-20 23:41:41,617 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 67 transitions. [2022-02-20 23:41:41,617 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:41,617 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:41,617 INFO L74 IsIncluded]: Start isIncluded. First operand has 64 states, 62 states have (on average 1.0483870967741935) 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:41:41,619 INFO L87 Difference]: Start difference. First operand has 64 states, 62 states have (on average 1.0483870967741935) 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:41:41,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:41,620 INFO L93 Difference]: Finished difference Result 66 states and 67 transitions. [2022-02-20 23:41:41,620 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 67 transitions. [2022-02-20 23:41:41,620 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:41,620 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:41,620 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:41,620 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:41,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 62 states have (on average 1.0483870967741935) 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:41:41,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 65 transitions. [2022-02-20 23:41:41,621 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 65 transitions. Word has length 58 [2022-02-20 23:41:41,621 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:41,621 INFO L470 AbstractCegarLoop]: Abstraction has 64 states and 65 transitions. [2022-02-20 23:41:41,622 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 45 states, 44 states have (on average 3.75) internal successors, (165), 45 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:41:41,622 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 65 transitions. [2022-02-20 23:41:41,622 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-02-20 23:41:41,622 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:41,622 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 6, 6, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:41,642 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:41,823 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:41,823 INFO L402 AbstractCegarLoop]: === Iteration 32 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:41,823 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:41,823 INFO L85 PathProgramCache]: Analyzing trace with hash 1921179211, now seen corresponding path program 9 times [2022-02-20 23:41:41,823 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:41,823 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1608678509] [2022-02-20 23:41:41,823 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:41,824 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:41,867 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:42,204 INFO L290 TraceCheckUtils]: 0: Hoare triple {9487#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9487#true} is VALID [2022-02-20 23:41:42,204 INFO L290 TraceCheckUtils]: 1: Hoare triple {9487#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {9487#true} is VALID [2022-02-20 23:41:42,204 INFO L290 TraceCheckUtils]: 2: Hoare triple {9487#true} assume !(main_~length1~0#1 < 1); {9487#true} is VALID [2022-02-20 23:41:42,204 INFO L290 TraceCheckUtils]: 3: Hoare triple {9487#true} assume !(main_~length2~0#1 < 1); {9487#true} is VALID [2022-02-20 23:41:42,205 INFO L290 TraceCheckUtils]: 4: Hoare triple {9487#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {9489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:42,206 INFO L290 TraceCheckUtils]: 5: Hoare triple {9489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:42,206 INFO L290 TraceCheckUtils]: 6: Hoare triple {9489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:42,207 INFO L290 TraceCheckUtils]: 7: Hoare triple {9489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} havoc main_#t~nondet10#1; {9489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:42,207 INFO L290 TraceCheckUtils]: 8: Hoare triple {9489#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9490#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:42,208 INFO L290 TraceCheckUtils]: 9: Hoare triple {9490#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9490#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:42,208 INFO L290 TraceCheckUtils]: 10: Hoare triple {9490#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9490#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:42,209 INFO L290 TraceCheckUtils]: 11: Hoare triple {9490#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet10#1; {9490#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:41:42,209 INFO L290 TraceCheckUtils]: 12: Hoare triple {9490#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9491#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,210 INFO L290 TraceCheckUtils]: 13: Hoare triple {9491#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9491#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,210 INFO L290 TraceCheckUtils]: 14: Hoare triple {9491#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9491#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,211 INFO L290 TraceCheckUtils]: 15: Hoare triple {9491#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {9491#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,211 INFO L290 TraceCheckUtils]: 16: Hoare triple {9491#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9492#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,212 INFO L290 TraceCheckUtils]: 17: Hoare triple {9492#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9492#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,212 INFO L290 TraceCheckUtils]: 18: Hoare triple {9492#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9492#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,213 INFO L290 TraceCheckUtils]: 19: Hoare triple {9492#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {9492#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,213 INFO L290 TraceCheckUtils]: 20: Hoare triple {9492#(and (<= |ULTIMATE.start_main_~i~0#1| 3) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9493#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,214 INFO L290 TraceCheckUtils]: 21: Hoare triple {9493#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9493#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,214 INFO L290 TraceCheckUtils]: 22: Hoare triple {9493#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9493#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,215 INFO L290 TraceCheckUtils]: 23: Hoare triple {9493#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {9493#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:42,215 INFO L290 TraceCheckUtils]: 24: Hoare triple {9493#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 4) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9494#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} is VALID [2022-02-20 23:41:42,216 INFO L290 TraceCheckUtils]: 25: Hoare triple {9494#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9495#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:42,216 INFO L290 TraceCheckUtils]: 26: Hoare triple {9495#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9495#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:42,217 INFO L290 TraceCheckUtils]: 27: Hoare triple {9495#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet10#1; {9495#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:42,217 INFO L290 TraceCheckUtils]: 28: Hoare triple {9495#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 5) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9496#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:42,218 INFO L290 TraceCheckUtils]: 29: Hoare triple {9496#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 6) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {9497#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:42,218 INFO L290 TraceCheckUtils]: 30: Hoare triple {9497#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (<= 7 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {9498#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} is VALID [2022-02-20 23:41:42,219 INFO L290 TraceCheckUtils]: 31: Hoare triple {9498#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {9499#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 6) 0))} is VALID [2022-02-20 23:41:42,219 INFO L290 TraceCheckUtils]: 32: Hoare triple {9499#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 6) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9499#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 6) 0))} is VALID [2022-02-20 23:41:42,220 INFO L290 TraceCheckUtils]: 33: Hoare triple {9499#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 6) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9499#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 6) 0))} is VALID [2022-02-20 23:41:42,220 INFO L290 TraceCheckUtils]: 34: Hoare triple {9499#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 6) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9499#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 6) 0))} is VALID [2022-02-20 23:41:42,221 INFO L290 TraceCheckUtils]: 35: Hoare triple {9499#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) 6) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:42,221 INFO L290 TraceCheckUtils]: 36: Hoare triple {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:42,222 INFO L290 TraceCheckUtils]: 37: Hoare triple {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:42,222 INFO L290 TraceCheckUtils]: 38: Hoare triple {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:42,223 INFO L290 TraceCheckUtils]: 39: Hoare triple {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:42,223 INFO L290 TraceCheckUtils]: 40: Hoare triple {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:42,224 INFO L290 TraceCheckUtils]: 41: Hoare triple {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:42,224 INFO L290 TraceCheckUtils]: 42: Hoare triple {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:42,225 INFO L290 TraceCheckUtils]: 43: Hoare triple {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:42,225 INFO L290 TraceCheckUtils]: 44: Hoare triple {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:42,226 INFO L290 TraceCheckUtils]: 45: Hoare triple {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:42,226 INFO L290 TraceCheckUtils]: 46: Hoare triple {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:42,227 INFO L290 TraceCheckUtils]: 47: Hoare triple {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:42,227 INFO L290 TraceCheckUtils]: 48: Hoare triple {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:42,228 INFO L290 TraceCheckUtils]: 49: Hoare triple {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:42,228 INFO L290 TraceCheckUtils]: 50: Hoare triple {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:42,229 INFO L290 TraceCheckUtils]: 51: Hoare triple {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:42,229 INFO L290 TraceCheckUtils]: 52: Hoare triple {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:42,230 INFO L290 TraceCheckUtils]: 53: Hoare triple {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:42,230 INFO L290 TraceCheckUtils]: 54: Hoare triple {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:42,231 INFO L290 TraceCheckUtils]: 55: Hoare triple {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9505#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:42,231 INFO L290 TraceCheckUtils]: 56: Hoare triple {9505#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:42,232 INFO L290 TraceCheckUtils]: 57: Hoare triple {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:42,232 INFO L290 TraceCheckUtils]: 58: Hoare triple {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9488#false} is VALID [2022-02-20 23:41:42,232 INFO L290 TraceCheckUtils]: 59: Hoare triple {9488#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9488#false} is VALID [2022-02-20 23:41:42,232 INFO L290 TraceCheckUtils]: 60: Hoare triple {9488#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {9488#false} is VALID [2022-02-20 23:41:42,232 INFO L134 CoverageAnalysis]: Checked inductivity of 157 backedges. 13 proven. 144 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:42,233 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:42,233 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1608678509] [2022-02-20 23:41:42,233 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1608678509] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:42,233 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [837796843] [2022-02-20 23:41:42,233 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:41:42,233 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:42,233 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:42,234 INFO L229 MonitoredProcess]: Starting monitored process 18 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:42,235 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-02-20 23:41:42,515 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 8 check-sat command(s) [2022-02-20 23:41:42,516 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:42,518 INFO L263 TraceCheckSpWp]: Trace formula consists of 326 conjuncts, 86 conjunts are in the unsatisfiable core [2022-02-20 23:41:42,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:42,539 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:42,556 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 10 treesize of output 8 [2022-02-20 23:41:42,885 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:41:43,098 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 19 [2022-02-20 23:41:43,261 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:43,290 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:43,321 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:43,365 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:43,400 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:41:43,445 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:43,455 INFO L290 TraceCheckUtils]: 0: Hoare triple {9487#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9487#true} is VALID [2022-02-20 23:41:43,455 INFO L290 TraceCheckUtils]: 1: Hoare triple {9487#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {9487#true} is VALID [2022-02-20 23:41:43,456 INFO L290 TraceCheckUtils]: 2: Hoare triple {9487#true} assume !(main_~length1~0#1 < 1); {9487#true} is VALID [2022-02-20 23:41:43,456 INFO L290 TraceCheckUtils]: 3: Hoare triple {9487#true} assume !(main_~length2~0#1 < 1); {9487#true} is VALID [2022-02-20 23:41:43,457 INFO L290 TraceCheckUtils]: 4: Hoare triple {9487#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,457 INFO L290 TraceCheckUtils]: 5: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,458 INFO L290 TraceCheckUtils]: 6: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,458 INFO L290 TraceCheckUtils]: 7: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,459 INFO L290 TraceCheckUtils]: 8: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,459 INFO L290 TraceCheckUtils]: 9: Hoare triple {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,460 INFO L290 TraceCheckUtils]: 10: Hoare triple {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,460 INFO L290 TraceCheckUtils]: 11: Hoare triple {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,461 INFO L290 TraceCheckUtils]: 12: Hoare triple {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:43,461 INFO L290 TraceCheckUtils]: 13: Hoare triple {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:43,462 INFO L290 TraceCheckUtils]: 14: Hoare triple {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:43,462 INFO L290 TraceCheckUtils]: 15: Hoare triple {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:43,463 INFO L290 TraceCheckUtils]: 16: Hoare triple {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,463 INFO L290 TraceCheckUtils]: 17: Hoare triple {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,464 INFO L290 TraceCheckUtils]: 18: Hoare triple {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,464 INFO L290 TraceCheckUtils]: 19: Hoare triple {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:43,465 INFO L290 TraceCheckUtils]: 20: Hoare triple {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:43,465 INFO L290 TraceCheckUtils]: 21: Hoare triple {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:43,466 INFO L290 TraceCheckUtils]: 22: Hoare triple {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:43,466 INFO L290 TraceCheckUtils]: 23: Hoare triple {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet10#1; {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:43,466 INFO L290 TraceCheckUtils]: 24: Hoare triple {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9587#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:43,467 INFO L290 TraceCheckUtils]: 25: Hoare triple {9587#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:43,467 INFO L290 TraceCheckUtils]: 26: Hoare triple {9591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:43,468 INFO L290 TraceCheckUtils]: 27: Hoare triple {9591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet10#1; {9591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:43,468 INFO L290 TraceCheckUtils]: 28: Hoare triple {9591#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9601#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 6) (< 6 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:43,469 INFO L290 TraceCheckUtils]: 29: Hoare triple {9601#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 6) (< 6 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {9605#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:43,470 INFO L290 TraceCheckUtils]: 30: Hoare triple {9605#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {9609#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:43,471 INFO L290 TraceCheckUtils]: 31: Hoare triple {9609#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {9613#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:43,472 INFO L290 TraceCheckUtils]: 32: Hoare triple {9613#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9613#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:43,473 INFO L290 TraceCheckUtils]: 33: Hoare triple {9613#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9613#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:43,473 INFO L290 TraceCheckUtils]: 34: Hoare triple {9613#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9613#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:43,474 INFO L290 TraceCheckUtils]: 35: Hoare triple {9613#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) |ULTIMATE.start_cstrcpy_~from#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:43,475 INFO L290 TraceCheckUtils]: 36: Hoare triple {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:43,475 INFO L290 TraceCheckUtils]: 37: Hoare triple {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:43,476 INFO L290 TraceCheckUtils]: 38: Hoare triple {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:43,476 INFO L290 TraceCheckUtils]: 39: Hoare triple {9500#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:43,477 INFO L290 TraceCheckUtils]: 40: Hoare triple {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:43,477 INFO L290 TraceCheckUtils]: 41: Hoare triple {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:43,478 INFO L290 TraceCheckUtils]: 42: Hoare triple {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:43,479 INFO L290 TraceCheckUtils]: 43: Hoare triple {9501#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:43,479 INFO L290 TraceCheckUtils]: 44: Hoare triple {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:43,480 INFO L290 TraceCheckUtils]: 45: Hoare triple {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:43,480 INFO L290 TraceCheckUtils]: 46: Hoare triple {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:43,481 INFO L290 TraceCheckUtils]: 47: Hoare triple {9502#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:43,481 INFO L290 TraceCheckUtils]: 48: Hoare triple {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:43,482 INFO L290 TraceCheckUtils]: 49: Hoare triple {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:43,482 INFO L290 TraceCheckUtils]: 50: Hoare triple {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:43,483 INFO L290 TraceCheckUtils]: 51: Hoare triple {9503#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:43,484 INFO L290 TraceCheckUtils]: 52: Hoare triple {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:43,484 INFO L290 TraceCheckUtils]: 53: Hoare triple {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:43,485 INFO L290 TraceCheckUtils]: 54: Hoare triple {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:43,485 INFO L290 TraceCheckUtils]: 55: Hoare triple {9504#(and (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9505#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:43,486 INFO L290 TraceCheckUtils]: 56: Hoare triple {9505#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:43,486 INFO L290 TraceCheckUtils]: 57: Hoare triple {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:43,487 INFO L290 TraceCheckUtils]: 58: Hoare triple {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9488#false} is VALID [2022-02-20 23:41:43,487 INFO L290 TraceCheckUtils]: 59: Hoare triple {9488#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9488#false} is VALID [2022-02-20 23:41:43,487 INFO L290 TraceCheckUtils]: 60: Hoare triple {9488#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {9488#false} is VALID [2022-02-20 23:41:43,487 INFO L134 CoverageAnalysis]: Checked inductivity of 157 backedges. 13 proven. 144 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:43,487 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:43,537 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) is different from false [2022-02-20 23:41:43,549 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)) is different from false [2022-02-20 23:41:43,574 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) is different from false [2022-02-20 23:41:43,596 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_880 (Array Int Int))) (= 0 (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 4)))) is different from false [2022-02-20 23:41:43,617 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)) is different from false [2022-02-20 23:41:43,640 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_880 (Array Int Int))) (= 0 (select (select (store |c_#memory_int| |c_ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |c_ULTIMATE.start_cstrcpy_~from#1.base|) (+ |c_ULTIMATE.start_cstrcpy_~from#1.offset| 6)))) is different from false [2022-02-20 23:41:43,655 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_880) |c_ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |c_ULTIMATE.start_main_~nondetString~0#1.offset|)) 0)) is different from false [2022-02-20 23:41:43,665 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:43,665 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:41:43,674 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:43,674 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 37 treesize of output 37 [2022-02-20 23:41:43,676 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 11 treesize of output 7 [2022-02-20 23:41:44,027 INFO L290 TraceCheckUtils]: 60: Hoare triple {9488#false} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {9488#false} is VALID [2022-02-20 23:41:44,028 INFO L290 TraceCheckUtils]: 59: Hoare triple {9488#false} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9488#false} is VALID [2022-02-20 23:41:44,028 INFO L290 TraceCheckUtils]: 58: Hoare triple {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9488#false} is VALID [2022-02-20 23:41:44,028 INFO L290 TraceCheckUtils]: 57: Hoare triple {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:44,029 INFO L290 TraceCheckUtils]: 56: Hoare triple {9505#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9506#(= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0)} is VALID [2022-02-20 23:41:44,029 INFO L290 TraceCheckUtils]: 55: Hoare triple {9716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9505#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0)} is VALID [2022-02-20 23:41:44,029 INFO L290 TraceCheckUtils]: 54: Hoare triple {9716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:44,030 INFO L290 TraceCheckUtils]: 53: Hoare triple {9723#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)} is VALID [2022-02-20 23:41:44,030 INFO L290 TraceCheckUtils]: 52: Hoare triple {9723#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9723#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:44,031 INFO L290 TraceCheckUtils]: 51: Hoare triple {9730#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9723#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0))} is VALID [2022-02-20 23:41:44,031 INFO L290 TraceCheckUtils]: 50: Hoare triple {9730#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9730#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:44,032 WARN L290 TraceCheckUtils]: 49: Hoare triple {9730#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9730#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is UNKNOWN [2022-02-20 23:41:44,033 INFO L290 TraceCheckUtils]: 48: Hoare triple {9730#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9730#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:44,033 INFO L290 TraceCheckUtils]: 47: Hoare triple {9743#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9730#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0))} is VALID [2022-02-20 23:41:44,034 INFO L290 TraceCheckUtils]: 46: Hoare triple {9743#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9743#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:44,035 WARN L290 TraceCheckUtils]: 45: Hoare triple {9743#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9743#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is UNKNOWN [2022-02-20 23:41:44,035 INFO L290 TraceCheckUtils]: 44: Hoare triple {9743#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9743#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:44,036 INFO L290 TraceCheckUtils]: 43: Hoare triple {9756#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9743#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0))} is VALID [2022-02-20 23:41:44,036 INFO L290 TraceCheckUtils]: 42: Hoare triple {9756#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9756#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:44,037 WARN L290 TraceCheckUtils]: 41: Hoare triple {9756#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9756#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is UNKNOWN [2022-02-20 23:41:44,038 INFO L290 TraceCheckUtils]: 40: Hoare triple {9756#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9756#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:44,038 INFO L290 TraceCheckUtils]: 39: Hoare triple {9769#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9756#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0))} is VALID [2022-02-20 23:41:44,039 INFO L290 TraceCheckUtils]: 38: Hoare triple {9769#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9769#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} is VALID [2022-02-20 23:41:44,040 WARN L290 TraceCheckUtils]: 37: Hoare triple {9769#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9769#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} is UNKNOWN [2022-02-20 23:41:44,040 INFO L290 TraceCheckUtils]: 36: Hoare triple {9769#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9769#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} is VALID [2022-02-20 23:41:44,041 INFO L290 TraceCheckUtils]: 35: Hoare triple {9782#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {9769#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0))} is VALID [2022-02-20 23:41:44,041 INFO L290 TraceCheckUtils]: 34: Hoare triple {9782#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {9782#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0))} is VALID [2022-02-20 23:41:44,042 WARN L290 TraceCheckUtils]: 33: Hoare triple {9782#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {9782#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0))} is UNKNOWN [2022-02-20 23:41:44,042 INFO L290 TraceCheckUtils]: 32: Hoare triple {9782#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {9782#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0))} is VALID [2022-02-20 23:41:44,043 INFO L290 TraceCheckUtils]: 31: Hoare triple {9795#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_880) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {9782#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_880) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0))} is VALID [2022-02-20 23:41:44,044 INFO L290 TraceCheckUtils]: 30: Hoare triple {9605#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {9795#(forall ((v_ArrVal_880 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_880) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~nondetString~0#1.offset|)) 0))} is VALID [2022-02-20 23:41:44,044 INFO L290 TraceCheckUtils]: 29: Hoare triple {9802#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {9605#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:41:44,047 INFO L290 TraceCheckUtils]: 28: Hoare triple {9806#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9802#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:44,048 INFO L290 TraceCheckUtils]: 27: Hoare triple {9806#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|)))} havoc main_#t~nondet10#1; {9806#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:44,049 INFO L290 TraceCheckUtils]: 26: Hoare triple {9806#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9806#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:44,049 INFO L290 TraceCheckUtils]: 25: Hoare triple {9587#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9806#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length2~0#1|) (and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= |ULTIMATE.start_main_~length2~0#1| 7) (< 6 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:44,049 INFO L290 TraceCheckUtils]: 24: Hoare triple {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9587#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 2) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:44,050 INFO L290 TraceCheckUtils]: 23: Hoare triple {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet10#1; {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:44,050 INFO L290 TraceCheckUtils]: 22: Hoare triple {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:44,051 INFO L290 TraceCheckUtils]: 21: Hoare triple {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:44,051 INFO L290 TraceCheckUtils]: 20: Hoare triple {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9574#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 3 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:41:44,051 INFO L290 TraceCheckUtils]: 19: Hoare triple {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,052 INFO L290 TraceCheckUtils]: 18: Hoare triple {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,052 INFO L290 TraceCheckUtils]: 17: Hoare triple {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,052 INFO L290 TraceCheckUtils]: 16: Hoare triple {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9561#(and (= 3 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,053 INFO L290 TraceCheckUtils]: 15: Hoare triple {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:44,053 INFO L290 TraceCheckUtils]: 14: Hoare triple {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:44,054 INFO L290 TraceCheckUtils]: 13: Hoare triple {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:44,054 INFO L290 TraceCheckUtils]: 12: Hoare triple {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9548#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:44,054 INFO L290 TraceCheckUtils]: 11: Hoare triple {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,055 INFO L290 TraceCheckUtils]: 10: Hoare triple {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,055 INFO L290 TraceCheckUtils]: 9: Hoare triple {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,055 INFO L290 TraceCheckUtils]: 8: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {9535#(and (= 0 (+ (- 1) |ULTIMATE.start_main_~i~0#1|)) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,056 INFO L290 TraceCheckUtils]: 7: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,056 INFO L290 TraceCheckUtils]: 6: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,057 INFO L290 TraceCheckUtils]: 5: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,057 INFO L290 TraceCheckUtils]: 4: Hoare triple {9487#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:44,057 INFO L290 TraceCheckUtils]: 3: Hoare triple {9487#true} assume !(main_~length2~0#1 < 1); {9487#true} is VALID [2022-02-20 23:41:44,057 INFO L290 TraceCheckUtils]: 2: Hoare triple {9487#true} assume !(main_~length1~0#1 < 1); {9487#true} is VALID [2022-02-20 23:41:44,057 INFO L290 TraceCheckUtils]: 1: Hoare triple {9487#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {9487#true} is VALID [2022-02-20 23:41:44,057 INFO L290 TraceCheckUtils]: 0: Hoare triple {9487#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9487#true} is VALID [2022-02-20 23:41:44,058 INFO L134 CoverageAnalysis]: Checked inductivity of 157 backedges. 13 proven. 67 refuted. 0 times theorem prover too weak. 0 trivial. 77 not checked. [2022-02-20 23:41:44,058 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [837796843] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:44,058 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:44,058 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 20, 21] total 41 [2022-02-20 23:41:44,058 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1477584417] [2022-02-20 23:41:44,058 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:44,059 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 0 states have call successors, (0), 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 61 [2022-02-20 23:41:44,059 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:44,059 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call 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:44,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 119 inductive. 0 not inductive. 5 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:44,173 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-02-20 23:41:44,173 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:44,173 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-02-20 23:41:44,174 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=1038, Unknown=7, NotChecked=490, Total=1640 [2022-02-20 23:41:44,174 INFO L87 Difference]: Start difference. First operand 64 states and 65 transitions. Second operand has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call 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:46,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:46,103 INFO L93 Difference]: Finished difference Result 100 states and 101 transitions. [2022-02-20 23:41:46,103 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-02-20 23:41:46,104 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 0 states have call successors, (0), 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 61 [2022-02-20 23:41:46,104 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:46,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call 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:46,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 76 transitions. [2022-02-20 23:41:46,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call 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:46,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 76 transitions. [2022-02-20 23:41:46,105 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states and 76 transitions. [2022-02-20 23:41:46,242 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:46,243 INFO L225 Difference]: With dead ends: 100 [2022-02-20 23:41:46,243 INFO L226 Difference]: Without dead ends: 71 [2022-02-20 23:41:46,244 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 164 GetRequests, 103 SyntacticMatches, 5 SemanticMatches, 56 ConstructedPredicates, 7 IntricatePredicates, 0 DeprecatedPredicates, 312 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=258, Invalid=2313, Unknown=7, NotChecked=728, Total=3306 [2022-02-20 23:41:46,244 INFO L933 BasicCegarLoop]: 19 mSDtfsCounter, 70 mSDsluCounter, 399 mSDsCounter, 0 mSdLazyCounter, 836 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 418 SdHoareTripleChecker+Invalid, 1294 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 836 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 409 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:46,244 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [70 Valid, 418 Invalid, 1294 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 836 Invalid, 0 Unknown, 409 Unchecked, 0.6s Time] [2022-02-20 23:41:46,244 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-02-20 23:41:46,245 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 68. [2022-02-20 23:41:46,245 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:46,245 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 68 states, 66 states have (on average 1.0454545454545454) 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:41:46,245 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 68 states, 66 states have (on average 1.0454545454545454) 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:41:46,246 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 68 states, 66 states have (on average 1.0454545454545454) 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:41:46,246 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:46,246 INFO L93 Difference]: Finished difference Result 71 states and 72 transitions. [2022-02-20 23:41:46,246 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 72 transitions. [2022-02-20 23:41:46,247 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:46,247 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:46,247 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 66 states have (on average 1.0454545454545454) 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:41:46,247 INFO L87 Difference]: Start difference. First operand has 68 states, 66 states have (on average 1.0454545454545454) 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:41:46,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:46,248 INFO L93 Difference]: Finished difference Result 71 states and 72 transitions. [2022-02-20 23:41:46,248 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 72 transitions. [2022-02-20 23:41:46,248 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:46,248 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:46,248 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:46,248 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:46,248 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 66 states have (on average 1.0454545454545454) 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:41:46,249 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 69 transitions. [2022-02-20 23:41:46,249 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 69 transitions. Word has length 61 [2022-02-20 23:41:46,249 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:46,249 INFO L470 AbstractCegarLoop]: Abstraction has 68 states and 69 transitions. [2022-02-20 23:41:46,249 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 41 states have (on average 3.024390243902439) internal successors, (124), 41 states have internal predecessors, (124), 0 states have call successors, (0), 0 states have call 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:46,249 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 69 transitions. [2022-02-20 23:41:46,250 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2022-02-20 23:41:46,250 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:46,250 INFO L514 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:46,269 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:46,459 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:46,459 INFO L402 AbstractCegarLoop]: === Iteration 33 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:46,459 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:46,460 INFO L85 PathProgramCache]: Analyzing trace with hash 940963662, now seen corresponding path program 10 times [2022-02-20 23:41:46,460 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:46,460 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2127878844] [2022-02-20 23:41:46,460 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:46,460 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:46,495 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:46,743 INFO L290 TraceCheckUtils]: 0: Hoare triple {10235#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10235#true} is VALID [2022-02-20 23:41:46,743 INFO L290 TraceCheckUtils]: 1: Hoare triple {10235#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {10235#true} is VALID [2022-02-20 23:41:46,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {10235#true} assume !(main_~length1~0#1 < 1); {10235#true} is VALID [2022-02-20 23:41:46,743 INFO L290 TraceCheckUtils]: 3: Hoare triple {10235#true} assume !(main_~length2~0#1 < 1); {10235#true} is VALID [2022-02-20 23:41:46,744 INFO L290 TraceCheckUtils]: 4: Hoare triple {10235#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {10237#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {10237#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10237#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,745 INFO L290 TraceCheckUtils]: 6: Hoare triple {10237#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10237#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,745 INFO L290 TraceCheckUtils]: 7: Hoare triple {10237#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {10237#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,746 INFO L290 TraceCheckUtils]: 8: Hoare triple {10237#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10238#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,746 INFO L290 TraceCheckUtils]: 9: Hoare triple {10238#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10238#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,746 INFO L290 TraceCheckUtils]: 10: Hoare triple {10238#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10238#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,747 INFO L290 TraceCheckUtils]: 11: Hoare triple {10238#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {10238#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,747 INFO L290 TraceCheckUtils]: 12: Hoare triple {10238#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10239#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,748 INFO L290 TraceCheckUtils]: 13: Hoare triple {10239#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10239#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,748 INFO L290 TraceCheckUtils]: 14: Hoare triple {10239#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10239#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {10239#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {10239#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,749 INFO L290 TraceCheckUtils]: 16: Hoare triple {10239#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10240#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,749 INFO L290 TraceCheckUtils]: 17: Hoare triple {10240#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10240#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,750 INFO L290 TraceCheckUtils]: 18: Hoare triple {10240#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10240#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,750 INFO L290 TraceCheckUtils]: 19: Hoare triple {10240#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {10240#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,750 INFO L290 TraceCheckUtils]: 20: Hoare triple {10240#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10241#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {10241#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10241#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,751 INFO L290 TraceCheckUtils]: 22: Hoare triple {10241#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10241#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,752 INFO L290 TraceCheckUtils]: 23: Hoare triple {10241#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {10241#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,752 INFO L290 TraceCheckUtils]: 24: Hoare triple {10241#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10242#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,753 INFO L290 TraceCheckUtils]: 25: Hoare triple {10242#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10242#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,753 INFO L290 TraceCheckUtils]: 26: Hoare triple {10242#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10242#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,754 INFO L290 TraceCheckUtils]: 27: Hoare triple {10242#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {10242#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,754 INFO L290 TraceCheckUtils]: 28: Hoare triple {10242#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10243#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:46,755 INFO L290 TraceCheckUtils]: 29: Hoare triple {10243#(and (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 6 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,755 INFO L290 TraceCheckUtils]: 30: Hoare triple {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,756 INFO L290 TraceCheckUtils]: 31: Hoare triple {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,756 INFO L290 TraceCheckUtils]: 32: Hoare triple {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,757 INFO L290 TraceCheckUtils]: 33: Hoare triple {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:46,757 INFO L290 TraceCheckUtils]: 34: Hoare triple {10244#(and (<= 8 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {10245#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} is VALID [2022-02-20 23:41:46,758 INFO L290 TraceCheckUtils]: 35: Hoare triple {10245#(and (<= 8 (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {10246#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,758 INFO L290 TraceCheckUtils]: 36: Hoare triple {10246#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10246#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,759 INFO L290 TraceCheckUtils]: 37: Hoare triple {10246#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10246#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,759 INFO L290 TraceCheckUtils]: 38: Hoare triple {10246#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10246#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,760 INFO L290 TraceCheckUtils]: 39: Hoare triple {10246#(and (= |ULTIMATE.start_cstrcpy_~from#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10247#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,760 INFO L290 TraceCheckUtils]: 40: Hoare triple {10247#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10247#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,760 INFO L290 TraceCheckUtils]: 41: Hoare triple {10247#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10247#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,761 INFO L290 TraceCheckUtils]: 42: Hoare triple {10247#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10247#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,762 INFO L290 TraceCheckUtils]: 43: Hoare triple {10247#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10248#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,762 INFO L290 TraceCheckUtils]: 44: Hoare triple {10248#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10248#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,763 INFO L290 TraceCheckUtils]: 45: Hoare triple {10248#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10248#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,763 INFO L290 TraceCheckUtils]: 46: Hoare triple {10248#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10248#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,764 INFO L290 TraceCheckUtils]: 47: Hoare triple {10248#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10249#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,764 INFO L290 TraceCheckUtils]: 48: Hoare triple {10249#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10249#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,765 INFO L290 TraceCheckUtils]: 49: Hoare triple {10249#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10249#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,765 INFO L290 TraceCheckUtils]: 50: Hoare triple {10249#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10249#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,766 INFO L290 TraceCheckUtils]: 51: Hoare triple {10249#(and (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10250#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,766 INFO L290 TraceCheckUtils]: 52: Hoare triple {10250#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10250#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,767 INFO L290 TraceCheckUtils]: 53: Hoare triple {10250#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10250#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,767 INFO L290 TraceCheckUtils]: 54: Hoare triple {10250#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10250#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:46,768 INFO L290 TraceCheckUtils]: 55: Hoare triple {10250#(and (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10251#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,768 INFO L290 TraceCheckUtils]: 56: Hoare triple {10251#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10251#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,768 INFO L290 TraceCheckUtils]: 57: Hoare triple {10251#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10251#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,769 INFO L290 TraceCheckUtils]: 58: Hoare triple {10251#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10251#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,770 INFO L290 TraceCheckUtils]: 59: Hoare triple {10251#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10252#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,770 INFO L290 TraceCheckUtils]: 60: Hoare triple {10252#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10252#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,770 INFO L290 TraceCheckUtils]: 61: Hoare triple {10252#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10252#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,771 INFO L290 TraceCheckUtils]: 62: Hoare triple {10252#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10252#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,771 INFO L290 TraceCheckUtils]: 63: Hoare triple {10252#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10253#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 7 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:46,783 INFO L290 TraceCheckUtils]: 64: Hoare triple {10253#(and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 7 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {10236#false} is VALID [2022-02-20 23:41:46,784 INFO L134 CoverageAnalysis]: Checked inductivity of 182 backedges. 45 proven. 137 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:46,784 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:46,784 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2127878844] [2022-02-20 23:41:46,784 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2127878844] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:46,784 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [377985348] [2022-02-20 23:41:46,784 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:41:46,784 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:46,785 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:46,785 INFO L229 MonitoredProcess]: Starting monitored process 19 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:46,787 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-02-20 23:41:46,905 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:41:46,905 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:41:46,907 INFO L263 TraceCheckSpWp]: Trace formula consists of 314 conjuncts, 88 conjunts are in the unsatisfiable core [2022-02-20 23:41:46,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:46,934 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:41:46,960 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:41:46,960 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 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:41:46,968 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 10 treesize of output 8 [2022-02-20 23:41:47,518 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 12 [2022-02-20 23:41:47,667 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:41:47,765 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:41:47,868 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:41:47,968 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:41:48,079 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:41:48,195 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 18 treesize of output 20 [2022-02-20 23:41:48,310 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:48,311 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:48,460 INFO L290 TraceCheckUtils]: 0: Hoare triple {10235#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10235#true} is VALID [2022-02-20 23:41:48,461 INFO L290 TraceCheckUtils]: 1: Hoare triple {10235#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {10235#true} is VALID [2022-02-20 23:41:48,461 INFO L290 TraceCheckUtils]: 2: Hoare triple {10235#true} assume !(main_~length1~0#1 < 1); {10235#true} is VALID [2022-02-20 23:41:48,461 INFO L290 TraceCheckUtils]: 3: Hoare triple {10235#true} assume !(main_~length2~0#1 < 1); {10235#true} is VALID [2022-02-20 23:41:48,462 INFO L290 TraceCheckUtils]: 4: Hoare triple {10235#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {10269#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,462 INFO L290 TraceCheckUtils]: 5: Hoare triple {10269#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10269#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,463 INFO L290 TraceCheckUtils]: 6: Hoare triple {10269#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10269#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,463 INFO L290 TraceCheckUtils]: 7: Hoare triple {10269#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {10269#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,464 INFO L290 TraceCheckUtils]: 8: Hoare triple {10269#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10282#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,464 INFO L290 TraceCheckUtils]: 9: Hoare triple {10282#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10282#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,464 INFO L290 TraceCheckUtils]: 10: Hoare triple {10282#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10282#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,465 INFO L290 TraceCheckUtils]: 11: Hoare triple {10282#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {10282#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,465 INFO L290 TraceCheckUtils]: 12: Hoare triple {10282#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10295#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,466 INFO L290 TraceCheckUtils]: 13: Hoare triple {10295#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10295#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,466 INFO L290 TraceCheckUtils]: 14: Hoare triple {10295#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10295#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,467 INFO L290 TraceCheckUtils]: 15: Hoare triple {10295#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {10295#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,468 INFO L290 TraceCheckUtils]: 16: Hoare triple {10295#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10308#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,468 INFO L290 TraceCheckUtils]: 17: Hoare triple {10308#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10308#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,468 INFO L290 TraceCheckUtils]: 18: Hoare triple {10308#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10308#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,469 INFO L290 TraceCheckUtils]: 19: Hoare triple {10308#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {10308#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,469 INFO L290 TraceCheckUtils]: 20: Hoare triple {10308#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 3 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10321#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,470 INFO L290 TraceCheckUtils]: 21: Hoare triple {10321#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10321#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,470 INFO L290 TraceCheckUtils]: 22: Hoare triple {10321#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10321#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,471 INFO L290 TraceCheckUtils]: 23: Hoare triple {10321#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet10#1; {10321#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,471 INFO L290 TraceCheckUtils]: 24: Hoare triple {10321#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 4 |ULTIMATE.start_main_~i~0#1|))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10334#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,471 INFO L290 TraceCheckUtils]: 25: Hoare triple {10334#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10334#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,472 INFO L290 TraceCheckUtils]: 26: Hoare triple {10334#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10334#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,472 INFO L290 TraceCheckUtils]: 27: Hoare triple {10334#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {10334#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,473 INFO L290 TraceCheckUtils]: 28: Hoare triple {10334#(and (<= 5 |ULTIMATE.start_main_~i~0#1|) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10347#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,473 INFO L290 TraceCheckUtils]: 29: Hoare triple {10347#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 6 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10347#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 6 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:41:48,474 INFO L290 TraceCheckUtils]: 30: Hoare triple {10347#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 6 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10354#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,474 INFO L290 TraceCheckUtils]: 31: Hoare triple {10354#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} havoc main_#t~nondet10#1; {10354#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,475 INFO L290 TraceCheckUtils]: 32: Hoare triple {10354#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10354#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,475 INFO L290 TraceCheckUtils]: 33: Hoare triple {10354#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {10354#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,476 INFO L290 TraceCheckUtils]: 34: Hoare triple {10354#(and (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {10367#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString~0#1.offset| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} is VALID [2022-02-20 23:41:48,476 INFO L290 TraceCheckUtils]: 35: Hoare triple {10367#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString~0#1.offset| (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (= |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 7 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {10371#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:41:48,477 INFO L290 TraceCheckUtils]: 36: Hoare triple {10371#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10375#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:41:48,477 INFO L290 TraceCheckUtils]: 37: Hoare triple {10375#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10375#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:41:48,478 INFO L290 TraceCheckUtils]: 38: Hoare triple {10375#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10375#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} is VALID [2022-02-20 23:41:48,479 INFO L290 TraceCheckUtils]: 39: Hoare triple {10375#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10385#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,479 INFO L290 TraceCheckUtils]: 40: Hoare triple {10385#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10385#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,480 INFO L290 TraceCheckUtils]: 41: Hoare triple {10385#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10385#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,480 INFO L290 TraceCheckUtils]: 42: Hoare triple {10385#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10385#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,481 INFO L290 TraceCheckUtils]: 43: Hoare triple {10385#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10398#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,481 INFO L290 TraceCheckUtils]: 44: Hoare triple {10398#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10398#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,482 INFO L290 TraceCheckUtils]: 45: Hoare triple {10398#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10398#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,482 INFO L290 TraceCheckUtils]: 46: Hoare triple {10398#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10398#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,483 INFO L290 TraceCheckUtils]: 47: Hoare triple {10398#(and (<= 2 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10411#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,484 INFO L290 TraceCheckUtils]: 48: Hoare triple {10411#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10411#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,484 INFO L290 TraceCheckUtils]: 49: Hoare triple {10411#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10411#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,485 INFO L290 TraceCheckUtils]: 50: Hoare triple {10411#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10411#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,485 INFO L290 TraceCheckUtils]: 51: Hoare triple {10411#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 3 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10424#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,486 INFO L290 TraceCheckUtils]: 52: Hoare triple {10424#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10424#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,486 INFO L290 TraceCheckUtils]: 53: Hoare triple {10424#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10424#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,487 INFO L290 TraceCheckUtils]: 54: Hoare triple {10424#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10424#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,487 INFO L290 TraceCheckUtils]: 55: Hoare triple {10424#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10437#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,488 INFO L290 TraceCheckUtils]: 56: Hoare triple {10437#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10437#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:48,488 INFO L290 TraceCheckUtils]: 57: Hoare triple {10437#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (not (= |ULTIMATE.start_cstrcpy_~to#1.base| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10444#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0))} is VALID [2022-02-20 23:41:48,489 INFO L290 TraceCheckUtils]: 58: Hoare triple {10444#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10444#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0))} is VALID [2022-02-20 23:41:48,490 INFO L290 TraceCheckUtils]: 59: Hoare triple {10444#(and (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~from#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10451#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,490 INFO L290 TraceCheckUtils]: 60: Hoare triple {10451#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) 0) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10455#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,491 INFO L290 TraceCheckUtils]: 61: Hoare triple {10455#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10455#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,491 INFO L290 TraceCheckUtils]: 62: Hoare triple {10455#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (+ (- 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10462#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (not (= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,492 INFO L290 TraceCheckUtils]: 63: Hoare triple {10462#(and (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (not (= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (<= 6 |ULTIMATE.start_cstrcpy_~from#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10466#(and (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (<= 7 |ULTIMATE.start_cstrcpy_~from#1.offset|))} is VALID [2022-02-20 23:41:48,492 INFO L290 TraceCheckUtils]: 64: Hoare triple {10466#(and (not (= |ULTIMATE.start_cstrcpy_~from#1.offset| (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (<= 7 (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (<= 7 |ULTIMATE.start_cstrcpy_~from#1.offset|))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {10236#false} is VALID [2022-02-20 23:41:48,493 INFO L134 CoverageAnalysis]: Checked inductivity of 182 backedges. 72 proven. 110 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:48,493 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:41:49,394 WARN L838 $PredicateComparison]: unable to prove that (forall ((|v_ULTIMATE.start_cstrcpy_~from#1.offset_138| Int) (v_ArrVal_962 (Array Int Int))) (or (<= (+ 8 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|) (select |c_#length| |c_ULTIMATE.start_main_~nondetString~0#1.base|)) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_962) |c_ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|)) 0) (< |c_ULTIMATE.start_main_~nondetString~0#1.offset| |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|) (not (<= 0 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|)))) is different from false [2022-02-20 23:41:49,483 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:49,484 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:41:49,506 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:41:49,506 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 37 treesize of output 37 [2022-02-20 23:41:49,535 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 11 treesize of output 7 [2022-02-20 23:41:51,335 INFO L290 TraceCheckUtils]: 64: Hoare triple {10470#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} assume !(1 + cstrcpy_~from#1.offset <= #length[cstrcpy_~from#1.base] && 0 <= cstrcpy_~from#1.offset); {10236#false} is VALID [2022-02-20 23:41:51,336 INFO L290 TraceCheckUtils]: 63: Hoare triple {10474#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10470#(and (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:51,336 INFO L290 TraceCheckUtils]: 62: Hoare triple {10478#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10474#(and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:51,337 INFO L290 TraceCheckUtils]: 61: Hoare triple {10478#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10478#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,338 INFO L290 TraceCheckUtils]: 60: Hoare triple {10485#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10478#(or (= |ULTIMATE.start_cstrcpy_#t~mem4#1| 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,338 INFO L290 TraceCheckUtils]: 59: Hoare triple {10489#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10485#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) |ULTIMATE.start_cstrcpy_~from#1.offset|) 0) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,339 INFO L290 TraceCheckUtils]: 58: Hoare triple {10489#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10489#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:51,340 INFO L290 TraceCheckUtils]: 57: Hoare triple {10496#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10489#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:51,340 INFO L290 TraceCheckUtils]: 56: Hoare triple {10496#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10496#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:51,341 INFO L290 TraceCheckUtils]: 55: Hoare triple {10503#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10496#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 1)) 0)) (and (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2))))} is VALID [2022-02-20 23:41:51,341 INFO L290 TraceCheckUtils]: 54: Hoare triple {10503#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10503#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)))} is VALID [2022-02-20 23:41:51,343 WARN L290 TraceCheckUtils]: 53: Hoare triple {10503#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10503#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)))} is UNKNOWN [2022-02-20 23:41:51,343 INFO L290 TraceCheckUtils]: 52: Hoare triple {10503#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10503#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)))} is VALID [2022-02-20 23:41:51,344 INFO L290 TraceCheckUtils]: 51: Hoare triple {10516#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10503#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 2)) 0)))} is VALID [2022-02-20 23:41:51,345 INFO L290 TraceCheckUtils]: 50: Hoare triple {10516#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10516#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,346 WARN L290 TraceCheckUtils]: 49: Hoare triple {10516#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10516#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is UNKNOWN [2022-02-20 23:41:51,346 INFO L290 TraceCheckUtils]: 48: Hoare triple {10516#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10516#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,347 INFO L290 TraceCheckUtils]: 47: Hoare triple {10529#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10516#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 3)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,347 INFO L290 TraceCheckUtils]: 46: Hoare triple {10529#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10529#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)))} is VALID [2022-02-20 23:41:51,348 INFO L290 TraceCheckUtils]: 45: Hoare triple {10529#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10529#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)))} is VALID [2022-02-20 23:41:51,349 INFO L290 TraceCheckUtils]: 44: Hoare triple {10529#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10529#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)))} is VALID [2022-02-20 23:41:51,360 INFO L290 TraceCheckUtils]: 43: Hoare triple {10542#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10529#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 4)) 0)))} is VALID [2022-02-20 23:41:51,361 INFO L290 TraceCheckUtils]: 42: Hoare triple {10542#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10542#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)))} is VALID [2022-02-20 23:41:51,363 WARN L290 TraceCheckUtils]: 41: Hoare triple {10542#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10542#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)))} is UNKNOWN [2022-02-20 23:41:51,363 INFO L290 TraceCheckUtils]: 40: Hoare triple {10542#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10542#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)))} is VALID [2022-02-20 23:41:51,364 INFO L290 TraceCheckUtils]: 39: Hoare triple {10555#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 8) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {10542#(or (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 5)) 0)))} is VALID [2022-02-20 23:41:51,365 INFO L290 TraceCheckUtils]: 38: Hoare triple {10555#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 8) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {10555#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 8) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,366 INFO L290 TraceCheckUtils]: 37: Hoare triple {10555#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 8) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {10555#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 8) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,366 INFO L290 TraceCheckUtils]: 36: Hoare triple {10565#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 8) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {10555#(or (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0)) (and (<= 0 (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 7)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 8) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|))))} is VALID [2022-02-20 23:41:51,367 INFO L290 TraceCheckUtils]: 35: Hoare triple {10569#(forall ((|v_ULTIMATE.start_cstrcpy_~from#1.offset_138| Int) (v_ArrVal_962 (Array Int Int))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_962) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|))) (not (<= 0 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|)) (<= (+ 8 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {10565#(or (not (<= 0 |ULTIMATE.start_cstrcpy_~from#1.offset|)) (forall ((v_ArrVal_962 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_cstrcpy_~to#1.base| v_ArrVal_962) |ULTIMATE.start_cstrcpy_~from#1.base|) (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 6)) 0)) (<= (+ |ULTIMATE.start_cstrcpy_~from#1.offset| 8) (select |#length| |ULTIMATE.start_cstrcpy_~from#1.base|)))} is VALID [2022-02-20 23:41:51,368 INFO L290 TraceCheckUtils]: 34: Hoare triple {10573#(and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {10569#(forall ((|v_ULTIMATE.start_cstrcpy_~from#1.offset_138| Int) (v_ArrVal_962 (Array Int Int))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|) (= 0 (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetArea~0#1.base| v_ArrVal_962) |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|))) (not (<= 0 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|)) (<= (+ 8 |v_ULTIMATE.start_cstrcpy_~from#1.offset_138|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:51,369 INFO L290 TraceCheckUtils]: 33: Hoare triple {10573#(and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {10573#(and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:51,370 INFO L290 TraceCheckUtils]: 32: Hoare triple {10573#(and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10573#(and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:51,370 INFO L290 TraceCheckUtils]: 31: Hoare triple {10573#(and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|)))} havoc main_#t~nondet10#1; {10573#(and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:51,374 INFO L290 TraceCheckUtils]: 30: Hoare triple {10586#(or (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))) (not (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10573#(and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:41:51,375 INFO L290 TraceCheckUtils]: 29: Hoare triple {10586#(or (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))) (not (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10586#(or (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))) (not (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:51,375 INFO L290 TraceCheckUtils]: 28: Hoare triple {10593#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10586#(or (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))) (not (<= (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))))} is VALID [2022-02-20 23:41:51,376 INFO L290 TraceCheckUtils]: 27: Hoare triple {10593#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} havoc main_#t~nondet10#1; {10593#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,377 INFO L290 TraceCheckUtils]: 26: Hoare triple {10593#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10593#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,378 INFO L290 TraceCheckUtils]: 25: Hoare triple {10593#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10593#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,378 INFO L290 TraceCheckUtils]: 24: Hoare triple {10606#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10593#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 2 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,379 INFO L290 TraceCheckUtils]: 23: Hoare triple {10606#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} havoc main_#t~nondet10#1; {10606#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,380 INFO L290 TraceCheckUtils]: 22: Hoare triple {10606#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10606#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,381 INFO L290 TraceCheckUtils]: 21: Hoare triple {10606#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10606#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,381 INFO L290 TraceCheckUtils]: 20: Hoare triple {10619#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10606#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 3 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,382 INFO L290 TraceCheckUtils]: 19: Hoare triple {10619#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} havoc main_#t~nondet10#1; {10619#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,383 INFO L290 TraceCheckUtils]: 18: Hoare triple {10619#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10619#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,384 INFO L290 TraceCheckUtils]: 17: Hoare triple {10619#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10619#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,385 INFO L290 TraceCheckUtils]: 16: Hoare triple {10632#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10619#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset| 4)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,385 INFO L290 TraceCheckUtils]: 15: Hoare triple {10632#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} havoc main_#t~nondet10#1; {10632#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {10632#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10632#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,387 INFO L290 TraceCheckUtils]: 13: Hoare triple {10632#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10632#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,388 INFO L290 TraceCheckUtils]: 12: Hoare triple {10645#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10632#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 5 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,388 INFO L290 TraceCheckUtils]: 11: Hoare triple {10645#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} havoc main_#t~nondet10#1; {10645#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,389 INFO L290 TraceCheckUtils]: 10: Hoare triple {10645#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10645#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,390 INFO L290 TraceCheckUtils]: 9: Hoare triple {10645#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10645#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,391 INFO L290 TraceCheckUtils]: 8: Hoare triple {10658#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 7 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {10645#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 6 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,391 INFO L290 TraceCheckUtils]: 7: Hoare triple {10658#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 7 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} havoc main_#t~nondet10#1; {10658#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 7 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,392 INFO L290 TraceCheckUtils]: 6: Hoare triple {10658#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 7 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {10658#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 7 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,393 INFO L290 TraceCheckUtils]: 5: Hoare triple {10658#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 7 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {10658#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 7 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,394 INFO L290 TraceCheckUtils]: 4: Hoare triple {10235#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {10658#(or (< (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|) (+ 7 |ULTIMATE.start_main_~i~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|)) (and (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) 7) (<= (+ |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (not (= |ULTIMATE.start_main_~nondetArea~0#1.base| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|))) (or (< |ULTIMATE.start_main_~nondetString~0#1.offset| 0) (<= (+ 8 |ULTIMATE.start_main_~nondetString~0#1.offset|) (select |#length| |ULTIMATE.start_main_~nondetString~0#1.base|)) (<= 7 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:41:51,394 INFO L290 TraceCheckUtils]: 3: Hoare triple {10235#true} assume !(main_~length2~0#1 < 1); {10235#true} is VALID [2022-02-20 23:41:51,394 INFO L290 TraceCheckUtils]: 2: Hoare triple {10235#true} assume !(main_~length1~0#1 < 1); {10235#true} is VALID [2022-02-20 23:41:51,394 INFO L290 TraceCheckUtils]: 1: Hoare triple {10235#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {10235#true} is VALID [2022-02-20 23:41:51,394 INFO L290 TraceCheckUtils]: 0: Hoare triple {10235#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10235#true} is VALID [2022-02-20 23:41:51,395 INFO L134 CoverageAnalysis]: Checked inductivity of 182 backedges. 91 proven. 91 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:51,395 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [377985348] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:41:51,395 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:41:51,395 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 22, 22] total 60 [2022-02-20 23:41:51,395 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1750401020] [2022-02-20 23:41:51,395 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:41:51,396 INFO L78 Accepts]: Start accepts. Automaton has has 61 states, 60 states have (on average 3.1166666666666667) internal successors, (187), 61 states have internal predecessors, (187), 0 states have call successors, (0), 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 65 [2022-02-20 23:41:51,396 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:41:51,396 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 61 states, 60 states have (on average 3.1166666666666667) internal successors, (187), 61 states have internal predecessors, (187), 0 states have call successors, (0), 0 states have call 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:51,569 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 187 edges. 187 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:41:51,569 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 61 states [2022-02-20 23:41:51,569 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:41:51,570 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 61 interpolants. [2022-02-20 23:41:51,570 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=411, Invalid=3131, Unknown=2, NotChecked=116, Total=3660 [2022-02-20 23:41:51,570 INFO L87 Difference]: Start difference. First operand 68 states and 69 transitions. Second operand has 61 states, 60 states have (on average 3.1166666666666667) internal successors, (187), 61 states have internal predecessors, (187), 0 states have call successors, (0), 0 states have call 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,340 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:54,340 INFO L93 Difference]: Finished difference Result 80 states and 81 transitions. [2022-02-20 23:41:54,340 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-02-20 23:41:54,340 INFO L78 Accepts]: Start accepts. Automaton has has 61 states, 60 states have (on average 3.1166666666666667) internal successors, (187), 61 states have internal predecessors, (187), 0 states have call successors, (0), 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 65 [2022-02-20 23:41:54,341 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:41:54,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 60 states have (on average 3.1166666666666667) internal successors, (187), 61 states have internal predecessors, (187), 0 states have call successors, (0), 0 states have call 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,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 83 transitions. [2022-02-20 23:41:54,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 60 states have (on average 3.1166666666666667) internal successors, (187), 61 states have internal predecessors, (187), 0 states have call successors, (0), 0 states have call 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,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 83 transitions. [2022-02-20 23:41:54,342 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 27 states and 83 transitions. [2022-02-20 23:41:54,421 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:54,422 INFO L225 Difference]: With dead ends: 80 [2022-02-20 23:41:54,422 INFO L226 Difference]: Without dead ends: 80 [2022-02-20 23:41:54,423 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 92 SyntacticMatches, 4 SemanticMatches, 77 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 1074 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=902, Invalid=5094, Unknown=14, NotChecked=152, Total=6162 [2022-02-20 23:41:54,423 INFO L933 BasicCegarLoop]: 20 mSDtfsCounter, 179 mSDsluCounter, 418 mSDsCounter, 0 mSdLazyCounter, 1007 mSolverCounterSat, 128 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 179 SdHoareTripleChecker+Valid, 438 SdHoareTripleChecker+Invalid, 1438 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 128 IncrementalHoareTripleChecker+Valid, 1007 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 303 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-02-20 23:41:54,423 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [179 Valid, 438 Invalid, 1438 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [128 Valid, 1007 Invalid, 0 Unknown, 303 Unchecked, 0.8s Time] [2022-02-20 23:41:54,424 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-02-20 23:41:54,424 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 75. [2022-02-20 23:41:54,424 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:41:54,424 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand has 75 states, 73 states have (on average 1.0547945205479452) internal successors, (77), 74 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:54,424 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand has 75 states, 73 states have (on average 1.0547945205479452) internal successors, (77), 74 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:54,425 INFO L87 Difference]: Start difference. First operand 80 states. Second operand has 75 states, 73 states have (on average 1.0547945205479452) internal successors, (77), 74 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:54,425 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:54,425 INFO L93 Difference]: Finished difference Result 80 states and 81 transitions. [2022-02-20 23:41:54,425 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 81 transitions. [2022-02-20 23:41:54,425 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:54,425 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:54,425 INFO L74 IsIncluded]: Start isIncluded. First operand has 75 states, 73 states have (on average 1.0547945205479452) internal successors, (77), 74 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) Second operand 80 states. [2022-02-20 23:41:54,428 INFO L87 Difference]: Start difference. First operand has 75 states, 73 states have (on average 1.0547945205479452) internal successors, (77), 74 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) Second operand 80 states. [2022-02-20 23:41:54,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:41:54,429 INFO L93 Difference]: Finished difference Result 80 states and 81 transitions. [2022-02-20 23:41:54,429 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 81 transitions. [2022-02-20 23:41:54,429 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:41:54,429 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:41:54,429 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:41:54,430 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:41:54,430 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 75 states, 73 states have (on average 1.0547945205479452) internal successors, (77), 74 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:54,430 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 77 transitions. [2022-02-20 23:41:54,430 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 77 transitions. Word has length 65 [2022-02-20 23:41:54,430 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:41:54,431 INFO L470 AbstractCegarLoop]: Abstraction has 75 states and 77 transitions. [2022-02-20 23:41:54,431 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 61 states, 60 states have (on average 3.1166666666666667) internal successors, (187), 61 states have internal predecessors, (187), 0 states have call successors, (0), 0 states have call 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,431 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 77 transitions. [2022-02-20 23:41:54,431 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 67 [2022-02-20 23:41:54,431 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:41:54,431 INFO L514 BasicCegarLoop]: trace histogram [8, 7, 7, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:41:54,450 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-02-20 23:41:54,639 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable32,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:54,639 INFO L402 AbstractCegarLoop]: === Iteration 34 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 5 more)] === [2022-02-20 23:41:54,640 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:41:54,640 INFO L85 PathProgramCache]: Analyzing trace with hash -894897563, now seen corresponding path program 8 times [2022-02-20 23:41:54,640 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:41:54,640 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [184465229] [2022-02-20 23:41:54,640 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:41:54,640 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:41:54,674 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:41:54,902 INFO L290 TraceCheckUtils]: 0: Hoare triple {11042#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {11042#true} is VALID [2022-02-20 23:41:54,902 INFO L290 TraceCheckUtils]: 1: Hoare triple {11042#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet5#1, main_#t~nondet6#1, main_#t~malloc7#1.base, main_#t~malloc7#1.offset, main_#t~malloc8#1.base, main_#t~malloc8#1.offset, main_#t~nondet10#1, main_#t~post9#1, main_~i~0#1, main_#t~ret11#1.base, main_#t~ret11#1.offset, main_~length1~0#1, main_~length2~0#1, main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1;assume -2147483648 <= main_#t~nondet6#1 && main_#t~nondet6#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet6#1;havoc main_#t~nondet6#1; {11042#true} is VALID [2022-02-20 23:41:54,902 INFO L290 TraceCheckUtils]: 2: Hoare triple {11042#true} assume !(main_~length1~0#1 < 1); {11042#true} is VALID [2022-02-20 23:41:54,902 INFO L290 TraceCheckUtils]: 3: Hoare triple {11042#true} assume !(main_~length2~0#1 < 1); {11042#true} is VALID [2022-02-20 23:41:54,903 INFO L290 TraceCheckUtils]: 4: Hoare triple {11042#true} assume !(main_~length1~0#1 < main_~length2~0#1);call main_#t~malloc7#1.base, main_#t~malloc7#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset := main_#t~malloc7#1.base, main_#t~malloc7#1.offset;call main_#t~malloc8#1.base, main_#t~malloc8#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString~0#1.base, main_~nondetString~0#1.offset := main_#t~malloc8#1.base, main_#t~malloc8#1.offset;main_~i~0#1 := 0; {11044#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,904 INFO L290 TraceCheckUtils]: 5: Hoare triple {11044#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {11044#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,904 INFO L290 TraceCheckUtils]: 6: Hoare triple {11044#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {11044#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,905 INFO L290 TraceCheckUtils]: 7: Hoare triple {11044#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {11044#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,905 INFO L290 TraceCheckUtils]: 8: Hoare triple {11044#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {11045#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,905 INFO L290 TraceCheckUtils]: 9: Hoare triple {11045#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {11045#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,906 INFO L290 TraceCheckUtils]: 10: Hoare triple {11045#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {11045#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,906 INFO L290 TraceCheckUtils]: 11: Hoare triple {11045#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {11045#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,907 INFO L290 TraceCheckUtils]: 12: Hoare triple {11045#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {11046#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,907 INFO L290 TraceCheckUtils]: 13: Hoare triple {11046#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {11046#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,908 INFO L290 TraceCheckUtils]: 14: Hoare triple {11046#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {11046#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,908 INFO L290 TraceCheckUtils]: 15: Hoare triple {11046#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {11046#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,909 INFO L290 TraceCheckUtils]: 16: Hoare triple {11046#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {11047#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,909 INFO L290 TraceCheckUtils]: 17: Hoare triple {11047#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {11047#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,909 INFO L290 TraceCheckUtils]: 18: Hoare triple {11047#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {11047#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,910 INFO L290 TraceCheckUtils]: 19: Hoare triple {11047#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {11047#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,910 INFO L290 TraceCheckUtils]: 20: Hoare triple {11047#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {11048#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,911 INFO L290 TraceCheckUtils]: 21: Hoare triple {11048#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {11048#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,911 INFO L290 TraceCheckUtils]: 22: Hoare triple {11048#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {11048#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,912 INFO L290 TraceCheckUtils]: 23: Hoare triple {11048#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {11048#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,912 INFO L290 TraceCheckUtils]: 24: Hoare triple {11048#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 4) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {11049#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,913 INFO L290 TraceCheckUtils]: 25: Hoare triple {11049#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {11049#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,913 INFO L290 TraceCheckUtils]: 26: Hoare triple {11049#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {11049#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,914 INFO L290 TraceCheckUtils]: 27: Hoare triple {11049#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} havoc main_#t~nondet10#1; {11049#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,914 INFO L290 TraceCheckUtils]: 28: Hoare triple {11049#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 5) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {11050#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} is VALID [2022-02-20 23:41:54,915 INFO L290 TraceCheckUtils]: 29: Hoare triple {11050#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 6) (+ |ULTIMATE.start_main_~i~0#1| (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|))))} assume !!(main_~i~0#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet10#1 && main_#t~nondet10#1 <= 127; {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,915 INFO L290 TraceCheckUtils]: 30: Hoare triple {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet10#1, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + main_~i~0#1, 1); srcloc: L536 {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,916 INFO L290 TraceCheckUtils]: 31: Hoare triple {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} havoc main_#t~nondet10#1; {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,916 INFO L290 TraceCheckUtils]: 32: Hoare triple {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} main_#t~post9#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post9#1;havoc main_#t~post9#1; {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,916 INFO L290 TraceCheckUtils]: 33: Hoare triple {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume !(main_~i~0#1 < main_~length2~0#1 - 1); {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,917 INFO L290 TraceCheckUtils]: 34: Hoare triple {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString~0#1.base, main_~nondetString~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L534-4 {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} is VALID [2022-02-20 23:41:54,917 INFO L290 TraceCheckUtils]: 35: Hoare triple {11051#(and (= |ULTIMATE.start_main_~nondetArea~0#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_main_~nondetArea~0#1.base|)))} assume { :begin_inline_cstrcpy } true;cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset, cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset := main_~nondetArea~0#1.base, main_~nondetArea~0#1.offset, main_~nondetString~0#1.base, main_~nondetString~0#1.offset;havoc cstrcpy_#res#1.base, cstrcpy_#res#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset, cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset, cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, cstrcpy_~from#1.base, cstrcpy_~from#1.offset, cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_#in~to#1.base, cstrcpy_#in~to#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_#in~from#1.base, cstrcpy_#in~from#1.offset;cstrcpy_~save~0#1.base, cstrcpy_~save~0#1.offset := cstrcpy_~to#1.base, cstrcpy_~to#1.offset; {11052#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,918 INFO L290 TraceCheckUtils]: 36: Hoare triple {11052#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {11052#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,918 INFO L290 TraceCheckUtils]: 37: Hoare triple {11052#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {11052#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,919 INFO L290 TraceCheckUtils]: 38: Hoare triple {11052#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {11052#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,919 INFO L290 TraceCheckUtils]: 39: Hoare triple {11052#(and (= |ULTIMATE.start_cstrcpy_~to#1.offset| 0) (<= 8 (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {11053#(and (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,920 INFO L290 TraceCheckUtils]: 40: Hoare triple {11053#(and (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {11053#(and (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,920 INFO L290 TraceCheckUtils]: 41: Hoare triple {11053#(and (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {11053#(and (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,920 INFO L290 TraceCheckUtils]: 42: Hoare triple {11053#(and (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {11053#(and (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,921 INFO L290 TraceCheckUtils]: 43: Hoare triple {11053#(and (<= (+ 7 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 1 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {11054#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,921 INFO L290 TraceCheckUtils]: 44: Hoare triple {11054#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {11054#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,922 INFO L290 TraceCheckUtils]: 45: Hoare triple {11054#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {11054#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,922 INFO L290 TraceCheckUtils]: 46: Hoare triple {11054#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {11054#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,923 INFO L290 TraceCheckUtils]: 47: Hoare triple {11054#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 6) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 2 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {11055#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,923 INFO L290 TraceCheckUtils]: 48: Hoare triple {11055#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {11055#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,924 INFO L290 TraceCheckUtils]: 49: Hoare triple {11055#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {11055#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,924 INFO L290 TraceCheckUtils]: 50: Hoare triple {11055#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {11055#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,925 INFO L290 TraceCheckUtils]: 51: Hoare triple {11055#(and (<= 3 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ 5 |ULTIMATE.start_cstrcpy_~to#1.offset|) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {11056#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,925 INFO L290 TraceCheckUtils]: 52: Hoare triple {11056#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {11056#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,926 INFO L290 TraceCheckUtils]: 53: Hoare triple {11056#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {11056#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,926 INFO L290 TraceCheckUtils]: 54: Hoare triple {11056#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {11056#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,926 INFO L290 TraceCheckUtils]: 55: Hoare triple {11056#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 4 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {11057#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,927 INFO L290 TraceCheckUtils]: 56: Hoare triple {11057#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {11057#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,927 INFO L290 TraceCheckUtils]: 57: Hoare triple {11057#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {11057#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,928 INFO L290 TraceCheckUtils]: 58: Hoare triple {11057#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {11057#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,928 INFO L290 TraceCheckUtils]: 59: Hoare triple {11057#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 5 |ULTIMATE.start_cstrcpy_~to#1.offset|))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {11058#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,929 INFO L290 TraceCheckUtils]: 60: Hoare triple {11058#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {11058#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,929 INFO L290 TraceCheckUtils]: 61: Hoare triple {11058#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} SUMMARY for call write~int(cstrcpy_#t~mem4#1, cstrcpy_~to#1.base, cstrcpy_~to#1.offset, 1); srcloc: L517-1 {11058#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,930 INFO L290 TraceCheckUtils]: 62: Hoare triple {11058#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} assume !!(0 != cstrcpy_#t~mem4#1);havoc cstrcpy_#t~mem4#1; {11058#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} is VALID [2022-02-20 23:41:54,930 INFO L290 TraceCheckUtils]: 63: Hoare triple {11058#(and (<= 6 |ULTIMATE.start_cstrcpy_~to#1.offset|) (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)))} cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;cstrcpy_~from#1.base, cstrcpy_~from#1.offset := cstrcpy_~from#1.base, 1 + cstrcpy_~from#1.offset;havoc cstrcpy_#t~pre2#1.base, cstrcpy_#t~pre2#1.offset;cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;cstrcpy_~to#1.base, cstrcpy_~to#1.offset := cstrcpy_~to#1.base, 1 + cstrcpy_~to#1.offset;havoc cstrcpy_#t~pre3#1.base, cstrcpy_#t~pre3#1.offset; {11059#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 7 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,931 INFO L290 TraceCheckUtils]: 64: Hoare triple {11059#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 7 |ULTIMATE.start_cstrcpy_~to#1.offset|))} SUMMARY for call cstrcpy_#t~mem4#1 := read~int(cstrcpy_~from#1.base, cstrcpy_~from#1.offset, 1); srcloc: L517-5 {11059#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 7 |ULTIMATE.start_cstrcpy_~to#1.offset|))} is VALID [2022-02-20 23:41:54,931 INFO L290 TraceCheckUtils]: 65: Hoare triple {11059#(and (<= (+ |ULTIMATE.start_cstrcpy_~to#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcpy_~to#1.base|)) (<= 7 |ULTIMATE.start_cstrcpy_~to#1.offset|))} assume !(1 + cstrcpy_~to#1.offset <= #length[cstrcpy_~to#1.base] && 0 <= cstrcpy_~to#1.offset); {11043#false} is VALID [2022-02-20 23:41:54,932 INFO L134 CoverageAnalysis]: Checked inductivity of 189 backedges. 45 proven. 144 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:41:54,932 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:41:54,932 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [184465229] [2022-02-20 23:41:54,932 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [184465229] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:41:54,932 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [839433055] [2022-02-20 23:41:54,932 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:41:54,932 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:41:54,932 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:41:54,934 INFO L229 MonitoredProcess]: Starting monitored process 20 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:54,967 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process