./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/array-memsafety/cstrncmp-alloca-1.i --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for memory safety (deref-memtrack) Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerMemDerefMemtrack.xml -i ../sv-benchmarks/c/array-memsafety/cstrncmp-alloca-1.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-DerefFreeMemtrack-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G valid-free) ) CHECK( init(main()), LTL(G valid-deref) ) CHECK( init(main()), LTL(G valid-memtrack) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 51aa0675891000edd5d1736f3584d06816ce7050b76c01d5b217260a35077c25 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:39:22,132 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:39:22,134 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:39:22,154 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:39:22,154 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:39:22,155 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:39:22,156 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:39:22,157 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:39:22,158 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:39:22,159 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:39:22,159 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:39:22,160 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:39:22,160 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:39:22,161 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:39:22,162 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:39:22,162 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:39:22,163 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:39:22,163 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:39:22,164 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:39:22,166 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:39:22,166 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:39:22,167 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:39:22,168 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:39:22,169 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:39:22,170 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:39:22,171 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:39:22,171 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:39:22,171 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:39:22,172 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:39:22,172 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:39:22,172 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:39:22,173 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:39:22,173 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:39:22,174 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:39:22,175 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:39:22,175 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:39:22,175 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:39:22,176 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:39:22,176 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:39:22,176 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:39:22,177 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:39:22,178 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:39:22,191 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:39:22,191 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:39:22,191 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:39:22,192 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:39:22,192 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:39:22,192 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:39:22,193 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:39:22,193 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:39:22,193 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:39:22,193 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:39:22,193 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:39:22,194 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:39:22,194 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:39:22,194 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:39:22,194 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:39:22,194 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:39:22,194 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:39:22,194 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:39:22,195 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:39:22,195 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:39:22,195 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:39:22,195 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:39:22,195 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:39:22,195 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:39:22,196 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:39:22,196 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:39:22,196 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:39:22,196 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:39:22,196 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:39:22,196 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:39:22,196 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 -> 51aa0675891000edd5d1736f3584d06816ce7050b76c01d5b217260a35077c25 [2022-02-20 23:39:22,390 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:39:22,416 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:39:22,418 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:39:22,418 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:39:22,421 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:39:22,421 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-memsafety/cstrncmp-alloca-1.i [2022-02-20 23:39:22,464 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/07105528b/63d2c6a1d95e448cb6bc6e754cef7331/FLAG1918930e5 [2022-02-20 23:39:22,886 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:39:22,890 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-memsafety/cstrncmp-alloca-1.i [2022-02-20 23:39:22,908 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/07105528b/63d2c6a1d95e448cb6bc6e754cef7331/FLAG1918930e5 [2022-02-20 23:39:22,918 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/07105528b/63d2c6a1d95e448cb6bc6e754cef7331 [2022-02-20 23:39:22,920 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:39:22,922 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:39:22,924 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:39:22,924 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:39:22,927 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:39:22,927 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:39:22" (1/1) ... [2022-02-20 23:39:22,928 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@4f352e8d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:22, skipping insertion in model container [2022-02-20 23:39:22,928 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:39:22" (1/1) ... [2022-02-20 23:39:22,933 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:39:22,967 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:39:23,222 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:39:23,232 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:39:23,269 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:39:23,308 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:39:23,309 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23 WrapperNode [2022-02-20 23:39:23,309 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:39:23,310 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:39:23,310 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:39:23,310 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:39:23,317 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:39:23" (1/1) ... [2022-02-20 23:39:23,325 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:39:23" (1/1) ... [2022-02-20 23:39:23,352 INFO L137 Inliner]: procedures = 117, calls = 18, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 114 [2022-02-20 23:39:23,352 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:39:23,353 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:39:23,353 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:39:23,354 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:39:23,359 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (1/1) ... [2022-02-20 23:39:23,359 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (1/1) ... [2022-02-20 23:39:23,372 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (1/1) ... [2022-02-20 23:39:23,373 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (1/1) ... [2022-02-20 23:39:23,380 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (1/1) ... [2022-02-20 23:39:23,386 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (1/1) ... [2022-02-20 23:39:23,388 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (1/1) ... [2022-02-20 23:39:23,393 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:39:23,394 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:39:23,394 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:39:23,394 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:39:23,407 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (1/1) ... [2022-02-20 23:39:23,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:39:23,420 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:23,431 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:39:23,479 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:39:23,508 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:39:23,508 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:39:23,508 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:39:23,509 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:39:23,509 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:39:23,510 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:39:23,642 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:39:23,643 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:39:24,018 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:39:24,023 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:39:24,024 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 23:39:24,025 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:39:24 BoogieIcfgContainer [2022-02-20 23:39:24,026 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:39:24,027 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:39:24,027 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:39:24,030 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:39:24,031 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:39:22" (1/3) ... [2022-02-20 23:39:24,031 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5aa1533d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:39:24, skipping insertion in model container [2022-02-20 23:39:24,031 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:23" (2/3) ... [2022-02-20 23:39:24,034 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5aa1533d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:39:24, skipping insertion in model container [2022-02-20 23:39:24,034 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:39:24" (3/3) ... [2022-02-20 23:39:24,035 INFO L111 eAbstractionObserver]: Analyzing ICFG cstrncmp-alloca-1.i [2022-02-20 23:39:24,039 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:39:24,040 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 19 error locations. [2022-02-20 23:39:24,076 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:39:24,080 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:39:24,081 INFO L340 AbstractCegarLoop]: Starting to check reachability of 19 error locations. [2022-02-20 23:39:24,092 INFO L276 IsEmpty]: Start isEmpty. Operand has 57 states, 37 states have (on average 1.864864864864865) internal successors, (69), 56 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:39:24,096 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:39:24,096 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:24,097 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:24,097 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:24,101 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:24,101 INFO L85 PathProgramCache]: Analyzing trace with hash 1805029096, now seen corresponding path program 1 times [2022-02-20 23:39:24,108 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:24,108 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1877939017] [2022-02-20 23:39:24,109 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:24,109 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:24,226 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:24,335 INFO L290 TraceCheckUtils]: 0: Hoare triple {60#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {60#true} is VALID [2022-02-20 23:39:24,336 INFO L290 TraceCheckUtils]: 1: Hoare triple {60#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {60#true} is VALID [2022-02-20 23:39:24,337 INFO L290 TraceCheckUtils]: 2: Hoare triple {60#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {62#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:39:24,338 INFO L290 TraceCheckUtils]: 3: Hoare triple {62#(<= |ULTIMATE.start_main_~length1~0#1| 1)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {62#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:39:24,343 INFO L290 TraceCheckUtils]: 4: Hoare triple {62#(<= |ULTIMATE.start_main_~length1~0#1| 1)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {63#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| 1))} is VALID [2022-02-20 23:39:24,345 INFO L290 TraceCheckUtils]: 5: Hoare triple {63#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {61#false} is VALID [2022-02-20 23:39:24,346 INFO L290 TraceCheckUtils]: 6: Hoare triple {61#false} assume !(1 == #valid[main_~nondetString1~0#1.base]); {61#false} is VALID [2022-02-20 23:39:24,347 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:39:24,347 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:24,348 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1877939017] [2022-02-20 23:39:24,348 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1877939017] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:24,348 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:24,348 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:24,350 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1118712279] [2022-02-20 23:39:24,350 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:24,354 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:39:24,355 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:24,358 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:39:24,366 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:39:24,367 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:24,368 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:24,383 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:24,384 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:24,386 INFO L87 Difference]: Start difference. First operand has 57 states, 37 states have (on average 1.864864864864865) internal successors, (69), 56 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 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:39:24,541 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:24,541 INFO L93 Difference]: Finished difference Result 106 states and 122 transitions. [2022-02-20 23:39:24,542 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:24,542 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:39:24,542 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:24,543 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:39:24,548 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 129 transitions. [2022-02-20 23:39:24,549 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:39:24,551 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 129 transitions. [2022-02-20 23:39:24,552 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 129 transitions. [2022-02-20 23:39:24,643 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 129 edges. 129 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:24,651 INFO L225 Difference]: With dead ends: 106 [2022-02-20 23:39:24,651 INFO L226 Difference]: Without dead ends: 102 [2022-02-20 23:39:24,652 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:39:24,655 INFO L933 BasicCegarLoop]: 62 mSDtfsCounter, 55 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 175 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:24,655 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 175 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:24,666 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-02-20 23:39:24,678 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 58. [2022-02-20 23:39:24,678 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:24,679 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 58 states, 39 states have (on average 1.7435897435897436) internal successors, (68), 57 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:24,681 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 58 states, 39 states have (on average 1.7435897435897436) internal successors, (68), 57 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:24,682 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 58 states, 39 states have (on average 1.7435897435897436) internal successors, (68), 57 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:24,691 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:24,691 INFO L93 Difference]: Finished difference Result 102 states and 118 transitions. [2022-02-20 23:39:24,691 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 118 transitions. [2022-02-20 23:39:24,692 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:24,692 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:24,692 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 39 states have (on average 1.7435897435897436) internal successors, (68), 57 states have internal predecessors, (68), 0 states have call successors, (0), 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 102 states. [2022-02-20 23:39:24,693 INFO L87 Difference]: Start difference. First operand has 58 states, 39 states have (on average 1.7435897435897436) internal successors, (68), 57 states have internal predecessors, (68), 0 states have call successors, (0), 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 102 states. [2022-02-20 23:39:24,696 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:24,696 INFO L93 Difference]: Finished difference Result 102 states and 118 transitions. [2022-02-20 23:39:24,697 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 118 transitions. [2022-02-20 23:39:24,697 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:24,697 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:24,698 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:24,698 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:24,698 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 39 states have (on average 1.7435897435897436) internal successors, (68), 57 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:24,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 68 transitions. [2022-02-20 23:39:24,700 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 68 transitions. Word has length 7 [2022-02-20 23:39:24,701 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:24,701 INFO L470 AbstractCegarLoop]: Abstraction has 58 states and 68 transitions. [2022-02-20 23:39:24,701 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:39:24,701 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 68 transitions. [2022-02-20 23:39:24,701 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:39:24,702 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:24,702 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:24,702 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:39:24,702 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:24,705 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:24,705 INFO L85 PathProgramCache]: Analyzing trace with hash 1806876138, now seen corresponding path program 1 times [2022-02-20 23:39:24,705 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:24,706 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [318626571] [2022-02-20 23:39:24,706 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:24,706 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:24,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:24,776 INFO L290 TraceCheckUtils]: 0: Hoare triple {434#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {434#true} is VALID [2022-02-20 23:39:24,777 INFO L290 TraceCheckUtils]: 1: Hoare triple {434#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {434#true} is VALID [2022-02-20 23:39:24,777 INFO L290 TraceCheckUtils]: 2: Hoare triple {434#true} assume !(main_~length1~0#1 < 1); {434#true} is VALID [2022-02-20 23:39:24,778 INFO L290 TraceCheckUtils]: 3: Hoare triple {434#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {436#(= |ULTIMATE.start_main_~length2~0#1| 1)} is VALID [2022-02-20 23:39:24,779 INFO L290 TraceCheckUtils]: 4: Hoare triple {436#(= |ULTIMATE.start_main_~length2~0#1| 1)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {437#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:39:24,780 INFO L290 TraceCheckUtils]: 5: Hoare triple {437#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {437#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:39:24,780 INFO L290 TraceCheckUtils]: 6: Hoare triple {437#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume !(1 == #valid[main_~nondetString1~0#1.base]); {435#false} is VALID [2022-02-20 23:39:24,781 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:39:24,781 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:24,781 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [318626571] [2022-02-20 23:39:24,781 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [318626571] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:24,781 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:24,782 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:24,782 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1103445922] [2022-02-20 23:39:24,782 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:24,783 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:39:24,783 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:24,783 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:39:24,789 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:39:24,789 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:24,789 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:24,790 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:24,790 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:24,790 INFO L87 Difference]: Start difference. First operand 58 states and 68 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:39:24,970 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:24,970 INFO L93 Difference]: Finished difference Result 107 states and 124 transitions. [2022-02-20 23:39:24,970 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:39:24,970 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:39:24,970 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:24,971 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:39:24,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 122 transitions. [2022-02-20 23:39:24,972 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:39:24,974 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 122 transitions. [2022-02-20 23:39:24,974 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 122 transitions. [2022-02-20 23:39:25,140 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:25,143 INFO L225 Difference]: With dead ends: 107 [2022-02-20 23:39:25,143 INFO L226 Difference]: Without dead ends: 107 [2022-02-20 23:39:25,144 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:39:25,147 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 159 mSDsluCounter, 39 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 159 SdHoareTripleChecker+Valid, 77 SdHoareTripleChecker+Invalid, 58 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:25,148 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [159 Valid, 77 Invalid, 58 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:25,149 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 107 states. [2022-02-20 23:39:25,154 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 107 to 56. [2022-02-20 23:39:25,154 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:25,155 INFO L82 GeneralOperation]: Start isEquivalent. First operand 107 states. Second operand has 56 states, 39 states have (on average 1.6923076923076923) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:25,155 INFO L74 IsIncluded]: Start isIncluded. First operand 107 states. Second operand has 56 states, 39 states have (on average 1.6923076923076923) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:25,155 INFO L87 Difference]: Start difference. First operand 107 states. Second operand has 56 states, 39 states have (on average 1.6923076923076923) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:25,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,158 INFO L93 Difference]: Finished difference Result 107 states and 124 transitions. [2022-02-20 23:39:25,159 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 124 transitions. [2022-02-20 23:39:25,162 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:25,162 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:25,163 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 39 states have (on average 1.6923076923076923) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 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 107 states. [2022-02-20 23:39:25,163 INFO L87 Difference]: Start difference. First operand has 56 states, 39 states have (on average 1.6923076923076923) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 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 107 states. [2022-02-20 23:39:25,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,167 INFO L93 Difference]: Finished difference Result 107 states and 124 transitions. [2022-02-20 23:39:25,167 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 124 transitions. [2022-02-20 23:39:25,169 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:25,169 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:25,169 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:25,169 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:25,169 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 39 states have (on average 1.6923076923076923) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:25,170 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 66 transitions. [2022-02-20 23:39:25,171 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 66 transitions. Word has length 7 [2022-02-20 23:39:25,171 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:25,171 INFO L470 AbstractCegarLoop]: Abstraction has 56 states and 66 transitions. [2022-02-20 23:39:25,171 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:39:25,171 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 66 transitions. [2022-02-20 23:39:25,172 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:39:25,172 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:25,172 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:25,172 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:39:25,172 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:25,173 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:25,173 INFO L85 PathProgramCache]: Analyzing trace with hash 1806876139, now seen corresponding path program 1 times [2022-02-20 23:39:25,173 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:25,174 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [944556817] [2022-02-20 23:39:25,174 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:25,174 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:25,214 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:25,284 INFO L290 TraceCheckUtils]: 0: Hoare triple {819#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {819#true} is VALID [2022-02-20 23:39:25,285 INFO L290 TraceCheckUtils]: 1: Hoare triple {819#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {819#true} is VALID [2022-02-20 23:39:25,285 INFO L290 TraceCheckUtils]: 2: Hoare triple {819#true} assume !(main_~length1~0#1 < 1); {819#true} is VALID [2022-02-20 23:39:25,285 INFO L290 TraceCheckUtils]: 3: Hoare triple {819#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {819#true} is VALID [2022-02-20 23:39:25,286 INFO L290 TraceCheckUtils]: 4: Hoare triple {819#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {821#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,287 INFO L290 TraceCheckUtils]: 5: Hoare triple {821#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {822#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,288 INFO L290 TraceCheckUtils]: 6: Hoare triple {822#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {820#false} is VALID [2022-02-20 23:39:25,288 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:39:25,288 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:25,288 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [944556817] [2022-02-20 23:39:25,289 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [944556817] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:25,289 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:25,289 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:25,289 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1072962429] [2022-02-20 23:39:25,289 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:25,290 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:39:25,290 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:25,290 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:39:25,296 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:39:25,296 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:25,296 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:25,296 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:25,297 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:25,297 INFO L87 Difference]: Start difference. First operand 56 states and 66 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:39:25,483 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,483 INFO L93 Difference]: Finished difference Result 103 states and 120 transitions. [2022-02-20 23:39:25,483 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:25,484 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:39:25,484 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:25,484 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:39:25,485 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 117 transitions. [2022-02-20 23:39:25,485 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:39:25,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 117 transitions. [2022-02-20 23:39:25,487 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 117 transitions. [2022-02-20 23:39:25,566 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:39:25,568 INFO L225 Difference]: With dead ends: 103 [2022-02-20 23:39:25,568 INFO L226 Difference]: Without dead ends: 103 [2022-02-20 23:39:25,568 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:39:25,569 INFO L933 BasicCegarLoop]: 41 mSDtfsCounter, 55 mSDsluCounter, 74 mSDsCounter, 0 mSdLazyCounter, 70 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 115 SdHoareTripleChecker+Invalid, 70 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 70 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:25,569 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 115 Invalid, 70 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:25,569 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2022-02-20 23:39:25,571 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 58. [2022-02-20 23:39:25,572 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:25,572 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand has 58 states, 41 states have (on average 1.6829268292682926) internal successors, (69), 57 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:39:25,572 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand has 58 states, 41 states have (on average 1.6829268292682926) internal successors, (69), 57 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:39:25,572 INFO L87 Difference]: Start difference. First operand 103 states. Second operand has 58 states, 41 states have (on average 1.6829268292682926) internal successors, (69), 57 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:39:25,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,575 INFO L93 Difference]: Finished difference Result 103 states and 120 transitions. [2022-02-20 23:39:25,575 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 120 transitions. [2022-02-20 23:39:25,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:25,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:25,575 INFO L74 IsIncluded]: Start isIncluded. First operand has 58 states, 41 states have (on average 1.6829268292682926) internal successors, (69), 57 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 103 states. [2022-02-20 23:39:25,576 INFO L87 Difference]: Start difference. First operand has 58 states, 41 states have (on average 1.6829268292682926) internal successors, (69), 57 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 103 states. [2022-02-20 23:39:25,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,578 INFO L93 Difference]: Finished difference Result 103 states and 120 transitions. [2022-02-20 23:39:25,578 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 120 transitions. [2022-02-20 23:39:25,578 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:25,578 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:25,578 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:25,579 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:25,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 58 states, 41 states have (on average 1.6829268292682926) internal successors, (69), 57 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:39:25,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 58 states to 58 states and 69 transitions. [2022-02-20 23:39:25,580 INFO L78 Accepts]: Start accepts. Automaton has 58 states and 69 transitions. Word has length 7 [2022-02-20 23:39:25,580 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:25,580 INFO L470 AbstractCegarLoop]: Abstraction has 58 states and 69 transitions. [2022-02-20 23:39:25,581 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:39:25,581 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 69 transitions. [2022-02-20 23:39:25,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:39:25,581 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:25,581 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:25,581 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:39:25,581 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr5REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:25,582 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:25,582 INFO L85 PathProgramCache]: Analyzing trace with hash -533876960, now seen corresponding path program 1 times [2022-02-20 23:39:25,582 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:25,582 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [801857611] [2022-02-20 23:39:25,583 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:25,583 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:25,600 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:25,641 INFO L290 TraceCheckUtils]: 0: Hoare triple {1194#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1194#true} is VALID [2022-02-20 23:39:25,641 INFO L290 TraceCheckUtils]: 1: Hoare triple {1194#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {1194#true} is VALID [2022-02-20 23:39:25,642 INFO L290 TraceCheckUtils]: 2: Hoare triple {1194#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1196#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:25,642 INFO L290 TraceCheckUtils]: 3: Hoare triple {1196#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {1196#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:25,643 INFO L290 TraceCheckUtils]: 4: Hoare triple {1196#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {1197#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,644 INFO L290 TraceCheckUtils]: 5: Hoare triple {1197#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1197#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,644 INFO L290 TraceCheckUtils]: 6: Hoare triple {1197#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {1197#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,645 INFO L290 TraceCheckUtils]: 7: Hoare triple {1197#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {1197#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,645 INFO L290 TraceCheckUtils]: 8: Hoare triple {1197#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1)) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1)); {1195#false} is VALID [2022-02-20 23:39:25,646 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:39:25,646 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:25,646 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [801857611] [2022-02-20 23:39:25,646 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [801857611] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:25,646 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:25,646 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:25,647 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [940202251] [2022-02-20 23:39:25,647 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:25,647 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:39:25,647 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:25,647 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:39:25,654 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:39:25,654 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:25,654 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:25,655 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:25,655 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:25,655 INFO L87 Difference]: Start difference. First operand 58 states and 69 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:39:25,730 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,730 INFO L93 Difference]: Finished difference Result 57 states and 68 transitions. [2022-02-20 23:39:25,730 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:25,730 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:39:25,730 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:25,731 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:39:25,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 62 transitions. [2022-02-20 23:39:25,732 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:39:25,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 62 transitions. [2022-02-20 23:39:25,732 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 62 transitions. [2022-02-20 23:39:25,781 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:25,782 INFO L225 Difference]: With dead ends: 57 [2022-02-20 23:39:25,782 INFO L226 Difference]: Without dead ends: 57 [2022-02-20 23:39:25,783 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:39:25,783 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 56 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 26 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:25,784 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [56 Valid, 44 Invalid, 26 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:25,784 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-02-20 23:39:25,786 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-02-20 23:39:25,786 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:25,786 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 41 states have (on average 1.6585365853658536) internal successors, (68), 56 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:25,786 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 41 states have (on average 1.6585365853658536) internal successors, (68), 56 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:25,787 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 41 states have (on average 1.6585365853658536) internal successors, (68), 56 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:25,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,788 INFO L93 Difference]: Finished difference Result 57 states and 68 transitions. [2022-02-20 23:39:25,788 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 68 transitions. [2022-02-20 23:39:25,788 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:25,788 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:25,789 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 41 states have (on average 1.6585365853658536) internal successors, (68), 56 states have internal predecessors, (68), 0 states have call successors, (0), 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 57 states. [2022-02-20 23:39:25,789 INFO L87 Difference]: Start difference. First operand has 57 states, 41 states have (on average 1.6585365853658536) internal successors, (68), 56 states have internal predecessors, (68), 0 states have call successors, (0), 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 57 states. [2022-02-20 23:39:25,790 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,790 INFO L93 Difference]: Finished difference Result 57 states and 68 transitions. [2022-02-20 23:39:25,790 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 68 transitions. [2022-02-20 23:39:25,790 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:25,790 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:25,791 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:25,791 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:25,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 41 states have (on average 1.6585365853658536) internal successors, (68), 56 states have internal predecessors, (68), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:25,792 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 68 transitions. [2022-02-20 23:39:25,792 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 68 transitions. Word has length 9 [2022-02-20 23:39:25,792 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:25,792 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 68 transitions. [2022-02-20 23:39:25,793 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:39:25,793 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 68 transitions. [2022-02-20 23:39:25,793 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:39:25,793 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:25,793 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:25,793 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:39:25,793 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:25,794 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:25,794 INFO L85 PathProgramCache]: Analyzing trace with hash -533876908, now seen corresponding path program 1 times [2022-02-20 23:39:25,794 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:25,794 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1907574409] [2022-02-20 23:39:25,795 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:25,795 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:25,806 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:25,826 INFO L290 TraceCheckUtils]: 0: Hoare triple {1428#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1428#true} is VALID [2022-02-20 23:39:25,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {1428#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {1428#true} is VALID [2022-02-20 23:39:25,827 INFO L290 TraceCheckUtils]: 2: Hoare triple {1428#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1428#true} is VALID [2022-02-20 23:39:25,827 INFO L290 TraceCheckUtils]: 3: Hoare triple {1428#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {1430#(<= |ULTIMATE.start_main_~length2~0#1| 1)} is VALID [2022-02-20 23:39:25,827 INFO L290 TraceCheckUtils]: 4: Hoare triple {1430#(<= |ULTIMATE.start_main_~length2~0#1| 1)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {1430#(<= |ULTIMATE.start_main_~length2~0#1| 1)} is VALID [2022-02-20 23:39:25,828 INFO L290 TraceCheckUtils]: 5: Hoare triple {1430#(<= |ULTIMATE.start_main_~length2~0#1| 1)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1430#(<= |ULTIMATE.start_main_~length2~0#1| 1)} is VALID [2022-02-20 23:39:25,828 INFO L290 TraceCheckUtils]: 6: Hoare triple {1430#(<= |ULTIMATE.start_main_~length2~0#1| 1)} main_~i~1#1 := 0; {1431#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1))} is VALID [2022-02-20 23:39:25,829 INFO L290 TraceCheckUtils]: 7: Hoare triple {1431#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {1429#false} is VALID [2022-02-20 23:39:25,829 INFO L290 TraceCheckUtils]: 8: Hoare triple {1429#false} assume !(1 == #valid[main_~nondetString2~0#1.base]); {1429#false} is VALID [2022-02-20 23:39:25,829 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:39:25,829 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:25,829 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1907574409] [2022-02-20 23:39:25,829 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1907574409] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:25,830 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:25,830 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:25,830 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [46598320] [2022-02-20 23:39:25,830 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:25,830 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) 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:39:25,831 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:25,831 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.25) internal successors, (9), 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:39:25,836 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:39:25,836 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:25,837 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:25,837 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:25,837 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:25,837 INFO L87 Difference]: Start difference. First operand 57 states and 68 transitions. Second operand has 4 states, 4 states have (on average 2.25) 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:39:25,944 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,944 INFO L93 Difference]: Finished difference Result 104 states and 122 transitions. [2022-02-20 23:39:25,945 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:25,945 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.25) 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:39:25,945 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:25,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) 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:39:25,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 111 transitions. [2022-02-20 23:39:25,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.25) 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:39:25,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 111 transitions. [2022-02-20 23:39:25,947 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 111 transitions. [2022-02-20 23:39:26,020 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:26,022 INFO L225 Difference]: With dead ends: 104 [2022-02-20 23:39:26,022 INFO L226 Difference]: Without dead ends: 104 [2022-02-20 23:39:26,022 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:39:26,023 INFO L933 BasicCegarLoop]: 57 mSDtfsCounter, 47 mSDsluCounter, 102 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 159 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:26,023 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 159 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:26,024 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2022-02-20 23:39:26,025 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 68. [2022-02-20 23:39:26,026 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:26,026 INFO L82 GeneralOperation]: Start isEquivalent. First operand 104 states. Second operand has 68 states, 52 states have (on average 1.5769230769230769) internal successors, (82), 67 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,026 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand has 68 states, 52 states have (on average 1.5769230769230769) internal successors, (82), 67 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,026 INFO L87 Difference]: Start difference. First operand 104 states. Second operand has 68 states, 52 states have (on average 1.5769230769230769) internal successors, (82), 67 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,028 INFO L93 Difference]: Finished difference Result 104 states and 122 transitions. [2022-02-20 23:39:26,028 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 122 transitions. [2022-02-20 23:39:26,029 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:26,029 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:26,029 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 52 states have (on average 1.5769230769230769) internal successors, (82), 67 states have internal predecessors, (82), 0 states have call successors, (0), 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 104 states. [2022-02-20 23:39:26,029 INFO L87 Difference]: Start difference. First operand has 68 states, 52 states have (on average 1.5769230769230769) internal successors, (82), 67 states have internal predecessors, (82), 0 states have call successors, (0), 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 104 states. [2022-02-20 23:39:26,031 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,031 INFO L93 Difference]: Finished difference Result 104 states and 122 transitions. [2022-02-20 23:39:26,031 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 122 transitions. [2022-02-20 23:39:26,031 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:26,031 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:26,032 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:26,032 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:26,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 52 states have (on average 1.5769230769230769) internal successors, (82), 67 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,033 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 82 transitions. [2022-02-20 23:39:26,033 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 82 transitions. Word has length 9 [2022-02-20 23:39:26,033 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:26,033 INFO L470 AbstractCegarLoop]: Abstraction has 68 states and 82 transitions. [2022-02-20 23:39:26,033 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.25) 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:39:26,034 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 82 transitions. [2022-02-20 23:39:26,034 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:39:26,034 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:26,034 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:26,034 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:39:26,034 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr2REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:26,035 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:26,035 INFO L85 PathProgramCache]: Analyzing trace with hash -476618606, now seen corresponding path program 1 times [2022-02-20 23:39:26,035 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:26,035 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1161044579] [2022-02-20 23:39:26,035 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:26,035 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:26,046 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:26,057 INFO L290 TraceCheckUtils]: 0: Hoare triple {1814#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1814#true} is VALID [2022-02-20 23:39:26,057 INFO L290 TraceCheckUtils]: 1: Hoare triple {1814#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {1814#true} is VALID [2022-02-20 23:39:26,057 INFO L290 TraceCheckUtils]: 2: Hoare triple {1814#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1814#true} is VALID [2022-02-20 23:39:26,057 INFO L290 TraceCheckUtils]: 3: Hoare triple {1814#true} assume !(main_~length2~0#1 < 1); {1814#true} is VALID [2022-02-20 23:39:26,058 INFO L290 TraceCheckUtils]: 4: Hoare triple {1814#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {1816#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:26,059 INFO L290 TraceCheckUtils]: 5: Hoare triple {1816#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1816#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:26,059 INFO L290 TraceCheckUtils]: 6: Hoare triple {1816#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} main_~i~1#1 := 0; {1816#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:26,059 INFO L290 TraceCheckUtils]: 7: Hoare triple {1816#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {1816#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:26,060 INFO L290 TraceCheckUtils]: 8: Hoare triple {1816#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} assume !(1 == #valid[main_~nondetString2~0#1.base]); {1815#false} is VALID [2022-02-20 23:39:26,060 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:26,060 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:26,060 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1161044579] [2022-02-20 23:39:26,060 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1161044579] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:26,060 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:26,060 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:39:26,060 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2111036342] [2022-02-20 23:39:26,061 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:26,061 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.5) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:39:26,061 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:26,061 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 4.5) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,067 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:39:26,067 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:39:26,067 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:26,067 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:39:26,067 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:39:26,068 INFO L87 Difference]: Start difference. First operand 68 states and 82 transitions. Second operand has 3 states, 2 states have (on average 4.5) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,120 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,120 INFO L93 Difference]: Finished difference Result 66 states and 80 transitions. [2022-02-20 23:39:26,120 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:39:26,120 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 4.5) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 9 [2022-02-20 23:39:26,120 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:26,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.5) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2022-02-20 23:39:26,121 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 4.5) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,122 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 61 transitions. [2022-02-20 23:39:26,122 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 61 transitions. [2022-02-20 23:39:26,167 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:39:26,168 INFO L225 Difference]: With dead ends: 66 [2022-02-20 23:39:26,168 INFO L226 Difference]: Without dead ends: 66 [2022-02-20 23:39:26,168 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:39:26,169 INFO L933 BasicCegarLoop]: 41 mSDtfsCounter, 47 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 23 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:26,169 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 45 Invalid, 23 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:26,170 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-02-20 23:39:26,171 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 66. [2022-02-20 23:39:26,171 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:26,172 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 66 states, 52 states have (on average 1.5384615384615385) internal successors, (80), 65 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,172 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 66 states, 52 states have (on average 1.5384615384615385) internal successors, (80), 65 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,172 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 66 states, 52 states have (on average 1.5384615384615385) internal successors, (80), 65 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,173 INFO L93 Difference]: Finished difference Result 66 states and 80 transitions. [2022-02-20 23:39:26,173 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 80 transitions. [2022-02-20 23:39:26,174 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:26,174 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:26,174 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 52 states have (on average 1.5384615384615385) internal successors, (80), 65 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 66 states. [2022-02-20 23:39:26,174 INFO L87 Difference]: Start difference. First operand has 66 states, 52 states have (on average 1.5384615384615385) internal successors, (80), 65 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 66 states. [2022-02-20 23:39:26,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,175 INFO L93 Difference]: Finished difference Result 66 states and 80 transitions. [2022-02-20 23:39:26,175 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 80 transitions. [2022-02-20 23:39:26,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:26,176 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:26,176 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:26,176 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:26,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 52 states have (on average 1.5384615384615385) internal successors, (80), 65 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 80 transitions. [2022-02-20 23:39:26,177 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 80 transitions. Word has length 9 [2022-02-20 23:39:26,177 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:26,177 INFO L470 AbstractCegarLoop]: Abstraction has 66 states and 80 transitions. [2022-02-20 23:39:26,178 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 4.5) internal successors, (9), 3 states have internal predecessors, (9), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,178 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 80 transitions. [2022-02-20 23:39:26,178 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:39:26,178 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:26,178 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:26,178 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:39:26,178 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:26,179 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:26,179 INFO L85 PathProgramCache]: Analyzing trace with hash -476618605, now seen corresponding path program 1 times [2022-02-20 23:39:26,179 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:26,179 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [834533642] [2022-02-20 23:39:26,179 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:26,179 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:26,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:26,230 INFO L290 TraceCheckUtils]: 0: Hoare triple {2083#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2083#true} is VALID [2022-02-20 23:39:26,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {2083#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {2083#true} is VALID [2022-02-20 23:39:26,231 INFO L290 TraceCheckUtils]: 2: Hoare triple {2083#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {2083#true} is VALID [2022-02-20 23:39:26,231 INFO L290 TraceCheckUtils]: 3: Hoare triple {2083#true} assume !(main_~length2~0#1 < 1); {2083#true} is VALID [2022-02-20 23:39:26,235 INFO L290 TraceCheckUtils]: 4: Hoare triple {2083#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {2085#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:26,235 INFO L290 TraceCheckUtils]: 5: Hoare triple {2085#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2085#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:26,236 INFO L290 TraceCheckUtils]: 6: Hoare triple {2085#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_~i~1#1 := 0; {2086#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:26,236 INFO L290 TraceCheckUtils]: 7: Hoare triple {2086#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {2087#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:26,237 INFO L290 TraceCheckUtils]: 8: Hoare triple {2087#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(1 + (main_~nondetString2~0#1.offset + main_~i~1#1) <= #length[main_~nondetString2~0#1.base] && 0 <= main_~nondetString2~0#1.offset + main_~i~1#1); {2084#false} is VALID [2022-02-20 23:39:26,237 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:26,237 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:26,237 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [834533642] [2022-02-20 23:39:26,237 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [834533642] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:26,237 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:26,237 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:26,238 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [152767047] [2022-02-20 23:39:26,238 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:26,238 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 2.25) internal successors, (9), 5 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:39:26,238 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:26,238 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 2.25) internal successors, (9), 5 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:39:26,263 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:39:26,263 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:39:26,263 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:26,263 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:39:26,264 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:39:26,264 INFO L87 Difference]: Start difference. First operand 66 states and 80 transitions. Second operand has 5 states, 4 states have (on average 2.25) internal successors, (9), 5 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:39:26,484 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,484 INFO L93 Difference]: Finished difference Result 104 states and 124 transitions. [2022-02-20 23:39:26,484 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:39:26,484 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 2.25) internal successors, (9), 5 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:39:26,484 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:26,485 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 2.25) internal successors, (9), 5 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:39:26,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 104 transitions. [2022-02-20 23:39:26,486 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 2.25) internal successors, (9), 5 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:39:26,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 104 transitions. [2022-02-20 23:39:26,487 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 104 transitions. [2022-02-20 23:39:26,568 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:26,569 INFO L225 Difference]: With dead ends: 104 [2022-02-20 23:39:26,569 INFO L226 Difference]: Without dead ends: 104 [2022-02-20 23:39:26,569 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:39:26,570 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 139 mSDsluCounter, 68 mSDsCounter, 0 mSdLazyCounter, 70 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 139 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 71 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 70 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:26,570 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [139 Valid, 106 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:26,571 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2022-02-20 23:39:26,573 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 68. [2022-02-20 23:39:26,573 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:26,573 INFO L82 GeneralOperation]: Start isEquivalent. First operand 104 states. Second operand has 68 states, 54 states have (on average 1.537037037037037) internal successors, (83), 67 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,573 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand has 68 states, 54 states have (on average 1.537037037037037) internal successors, (83), 67 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,574 INFO L87 Difference]: Start difference. First operand 104 states. Second operand has 68 states, 54 states have (on average 1.537037037037037) internal successors, (83), 67 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,576 INFO L93 Difference]: Finished difference Result 104 states and 124 transitions. [2022-02-20 23:39:26,576 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 124 transitions. [2022-02-20 23:39:26,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:26,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:26,576 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 54 states have (on average 1.537037037037037) internal successors, (83), 67 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 104 states. [2022-02-20 23:39:26,577 INFO L87 Difference]: Start difference. First operand has 68 states, 54 states have (on average 1.537037037037037) internal successors, (83), 67 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 104 states. [2022-02-20 23:39:26,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,578 INFO L93 Difference]: Finished difference Result 104 states and 124 transitions. [2022-02-20 23:39:26,579 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 124 transitions. [2022-02-20 23:39:26,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:26,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:26,579 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:26,579 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:26,579 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 54 states have (on average 1.537037037037037) internal successors, (83), 67 states have internal predecessors, (83), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-02-20 23:39:26,581 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 9 [2022-02-20 23:39:26,581 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:26,581 INFO L470 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-02-20 23:39:26,581 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 2.25) internal successors, (9), 5 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:39:26,581 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-02-20 23:39:26,582 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:39:26,582 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:26,582 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:26,582 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:39:26,582 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr7REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:26,582 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:26,583 INFO L85 PathProgramCache]: Analyzing trace with hash 629683418, now seen corresponding path program 1 times [2022-02-20 23:39:26,583 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:26,583 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [940571835] [2022-02-20 23:39:26,583 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:26,583 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:26,597 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:26,623 INFO L290 TraceCheckUtils]: 0: Hoare triple {2472#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2472#true} is VALID [2022-02-20 23:39:26,623 INFO L290 TraceCheckUtils]: 1: Hoare triple {2472#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {2472#true} is VALID [2022-02-20 23:39:26,623 INFO L290 TraceCheckUtils]: 2: Hoare triple {2472#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {2472#true} is VALID [2022-02-20 23:39:26,624 INFO L290 TraceCheckUtils]: 3: Hoare triple {2472#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2474#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:26,625 INFO L290 TraceCheckUtils]: 4: Hoare triple {2474#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:26,625 INFO L290 TraceCheckUtils]: 5: Hoare triple {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:26,626 INFO L290 TraceCheckUtils]: 6: Hoare triple {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} main_~i~1#1 := 0; {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:26,626 INFO L290 TraceCheckUtils]: 7: Hoare triple {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:26,627 INFO L290 TraceCheckUtils]: 8: Hoare triple {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:26,627 INFO L290 TraceCheckUtils]: 9: Hoare triple {2475#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} assume !(1 + (main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1)) <= #length[main_~nondetString2~0#1.base] && 0 <= main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1)); {2473#false} is VALID [2022-02-20 23:39:26,628 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:39:26,628 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:26,628 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [940571835] [2022-02-20 23:39:26,628 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [940571835] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:26,628 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:26,628 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:26,629 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1950741592] [2022-02-20 23:39:26,629 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:26,629 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 4 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:39:26,629 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:26,629 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 4 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:39:26,637 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:39:26,638 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:26,638 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:26,638 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:26,638 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:26,639 INFO L87 Difference]: Start difference. First operand 68 states and 83 transitions. Second operand has 4 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 4 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:39:26,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,724 INFO L93 Difference]: Finished difference Result 67 states and 82 transitions. [2022-02-20 23:39:26,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:26,724 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 4 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:39:26,724 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:26,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 4 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:39:26,725 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 59 transitions. [2022-02-20 23:39:26,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 4 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:39:26,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 59 transitions. [2022-02-20 23:39:26,726 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 59 transitions. [2022-02-20 23:39:26,777 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:26,777 INFO L225 Difference]: With dead ends: 67 [2022-02-20 23:39:26,778 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 23:39:26,778 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:39:26,778 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 99 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 99 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:26,779 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [99 Valid, 41 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:26,779 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 23:39:26,780 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 67. [2022-02-20 23:39:26,780 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:26,781 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 67 states, 54 states have (on average 1.5185185185185186) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,781 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 67 states, 54 states have (on average 1.5185185185185186) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,781 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 67 states, 54 states have (on average 1.5185185185185186) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,782 INFO L93 Difference]: Finished difference Result 67 states and 82 transitions. [2022-02-20 23:39:26,782 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 82 transitions. [2022-02-20 23:39:26,782 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:26,782 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:26,783 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 54 states have (on average 1.5185185185185186) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 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:39:26,783 INFO L87 Difference]: Start difference. First operand has 67 states, 54 states have (on average 1.5185185185185186) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 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:39:26,784 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:26,784 INFO L93 Difference]: Finished difference Result 67 states and 82 transitions. [2022-02-20 23:39:26,784 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 82 transitions. [2022-02-20 23:39:26,784 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:26,784 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:26,784 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:26,784 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:26,785 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 54 states have (on average 1.5185185185185186) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:26,786 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 82 transitions. [2022-02-20 23:39:26,786 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 82 transitions. Word has length 10 [2022-02-20 23:39:26,786 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:26,786 INFO L470 AbstractCegarLoop]: Abstraction has 67 states and 82 transitions. [2022-02-20 23:39:26,786 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 3.3333333333333335) internal successors, (10), 4 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:39:26,786 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 82 transitions. [2022-02-20 23:39:26,786 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:39:26,786 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:26,787 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:26,787 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:39:26,787 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr1REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:26,787 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:26,787 INFO L85 PathProgramCache]: Analyzing trace with hash -1226025170, now seen corresponding path program 1 times [2022-02-20 23:39:26,787 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:26,788 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1269802336] [2022-02-20 23:39:26,788 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:26,788 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:26,802 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:26,847 INFO L290 TraceCheckUtils]: 0: Hoare triple {2746#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2746#true} is VALID [2022-02-20 23:39:26,848 INFO L290 TraceCheckUtils]: 1: Hoare triple {2746#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {2746#true} is VALID [2022-02-20 23:39:26,848 INFO L290 TraceCheckUtils]: 2: Hoare triple {2746#true} assume !(main_~length1~0#1 < 1); {2746#true} is VALID [2022-02-20 23:39:26,848 INFO L290 TraceCheckUtils]: 3: Hoare triple {2746#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2746#true} is VALID [2022-02-20 23:39:26,849 INFO L290 TraceCheckUtils]: 4: Hoare triple {2746#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {2748#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:26,849 INFO L290 TraceCheckUtils]: 5: Hoare triple {2748#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {2748#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:26,850 INFO L290 TraceCheckUtils]: 6: Hoare triple {2748#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {2748#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:26,850 INFO L290 TraceCheckUtils]: 7: Hoare triple {2748#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {2748#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:26,851 INFO L290 TraceCheckUtils]: 8: Hoare triple {2748#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {2749#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:26,851 INFO L290 TraceCheckUtils]: 9: Hoare triple {2749#(and (= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {2750#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:26,852 INFO L290 TraceCheckUtils]: 10: Hoare triple {2750#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {2747#false} is VALID [2022-02-20 23:39:26,852 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:39:26,852 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:26,852 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1269802336] [2022-02-20 23:39:26,852 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1269802336] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:26,853 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1204743503] [2022-02-20 23:39:26,853 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:26,853 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:26,853 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:26,854 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:39:26,888 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:39:26,933 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:26,934 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-20 23:39:26,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:26,946 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:27,104 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:39:27,115 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:39:27,130 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:39:27,241 INFO L290 TraceCheckUtils]: 0: Hoare triple {2746#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2746#true} is VALID [2022-02-20 23:39:27,241 INFO L290 TraceCheckUtils]: 1: Hoare triple {2746#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {2746#true} is VALID [2022-02-20 23:39:27,241 INFO L290 TraceCheckUtils]: 2: Hoare triple {2746#true} assume !(main_~length1~0#1 < 1); {2746#true} is VALID [2022-02-20 23:39:27,242 INFO L290 TraceCheckUtils]: 3: Hoare triple {2746#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2746#true} is VALID [2022-02-20 23:39:27,242 INFO L290 TraceCheckUtils]: 4: Hoare triple {2746#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {2766#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:39:27,243 INFO L290 TraceCheckUtils]: 5: Hoare triple {2766#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {2766#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:39:27,243 INFO L290 TraceCheckUtils]: 6: Hoare triple {2766#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {2766#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:39:27,244 INFO L290 TraceCheckUtils]: 7: Hoare triple {2766#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet18#1; {2766#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:39:27,244 INFO L290 TraceCheckUtils]: 8: Hoare triple {2766#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {2779#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:27,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {2779#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {2750#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:27,245 INFO L290 TraceCheckUtils]: 10: Hoare triple {2750#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {2747#false} is VALID [2022-02-20 23:39:27,245 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:39:27,246 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:27,590 INFO L290 TraceCheckUtils]: 10: Hoare triple {2786#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1|)))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {2747#false} is VALID [2022-02-20 23:39:27,590 INFO L290 TraceCheckUtils]: 9: Hoare triple {2790#(or (and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1|))) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {2786#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:39:27,591 INFO L290 TraceCheckUtils]: 8: Hoare triple {2794#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {2790#(or (and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1|))) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:39:27,592 INFO L290 TraceCheckUtils]: 7: Hoare triple {2794#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} havoc main_#t~nondet18#1; {2794#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} is VALID [2022-02-20 23:39:27,592 INFO L290 TraceCheckUtils]: 6: Hoare triple {2794#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {2794#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} is VALID [2022-02-20 23:39:27,593 INFO L290 TraceCheckUtils]: 5: Hoare triple {2794#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {2794#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} is VALID [2022-02-20 23:39:27,594 INFO L290 TraceCheckUtils]: 4: Hoare triple {2746#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {2794#(and (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~i~0#1| 1))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1))))} is VALID [2022-02-20 23:39:27,594 INFO L290 TraceCheckUtils]: 3: Hoare triple {2746#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2746#true} is VALID [2022-02-20 23:39:27,594 INFO L290 TraceCheckUtils]: 2: Hoare triple {2746#true} assume !(main_~length1~0#1 < 1); {2746#true} is VALID [2022-02-20 23:39:27,594 INFO L290 TraceCheckUtils]: 1: Hoare triple {2746#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {2746#true} is VALID [2022-02-20 23:39:27,594 INFO L290 TraceCheckUtils]: 0: Hoare triple {2746#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2746#true} is VALID [2022-02-20 23:39:27,594 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:39:27,595 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1204743503] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:27,595 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:27,595 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 9 [2022-02-20 23:39:27,595 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [834038383] [2022-02-20 23:39:27,595 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:27,596 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 23:39:27,596 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:27,596 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:39:27,610 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:39:27,610 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 23:39:27,610 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:27,611 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 23:39:27,611 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=58, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:39:27,611 INFO L87 Difference]: Start difference. First operand 67 states and 82 transitions. Second operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:39:28,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:28,329 INFO L93 Difference]: Finished difference Result 158 states and 188 transitions. [2022-02-20 23:39:28,329 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:39:28,330 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 23:39:28,330 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:28,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:39:28,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 155 transitions. [2022-02-20 23:39:28,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:39:28,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 155 transitions. [2022-02-20 23:39:28,332 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 155 transitions. [2022-02-20 23:39:28,471 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 155 edges. 155 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:28,472 INFO L225 Difference]: With dead ends: 158 [2022-02-20 23:39:28,472 INFO L226 Difference]: Without dead ends: 158 [2022-02-20 23:39:28,472 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 15 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=57, Invalid=99, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:39:28,473 INFO L933 BasicCegarLoop]: 99 mSDtfsCounter, 375 mSDsluCounter, 224 mSDsCounter, 0 mSdLazyCounter, 191 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 375 SdHoareTripleChecker+Valid, 323 SdHoareTripleChecker+Invalid, 197 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 191 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:28,473 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [375 Valid, 323 Invalid, 197 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 191 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:39:28,473 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 158 states. [2022-02-20 23:39:28,474 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 158 to 62. [2022-02-20 23:39:28,475 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:28,475 INFO L82 GeneralOperation]: Start isEquivalent. First operand 158 states. Second operand has 62 states, 50 states have (on average 1.48) internal successors, (74), 61 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:28,475 INFO L74 IsIncluded]: Start isIncluded. First operand 158 states. Second operand has 62 states, 50 states have (on average 1.48) internal successors, (74), 61 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:28,475 INFO L87 Difference]: Start difference. First operand 158 states. Second operand has 62 states, 50 states have (on average 1.48) internal successors, (74), 61 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:28,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:28,477 INFO L93 Difference]: Finished difference Result 158 states and 188 transitions. [2022-02-20 23:39:28,477 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 188 transitions. [2022-02-20 23:39:28,477 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:28,477 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:28,477 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 50 states have (on average 1.48) internal successors, (74), 61 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 158 states. [2022-02-20 23:39:28,477 INFO L87 Difference]: Start difference. First operand has 62 states, 50 states have (on average 1.48) internal successors, (74), 61 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 158 states. [2022-02-20 23:39:28,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:28,479 INFO L93 Difference]: Finished difference Result 158 states and 188 transitions. [2022-02-20 23:39:28,479 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 188 transitions. [2022-02-20 23:39:28,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:28,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:28,479 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:28,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:28,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 50 states have (on average 1.48) internal successors, (74), 61 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:28,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 74 transitions. [2022-02-20 23:39:28,480 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 74 transitions. Word has length 11 [2022-02-20 23:39:28,480 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:28,480 INFO L470 AbstractCegarLoop]: Abstraction has 62 states and 74 transitions. [2022-02-20 23:39:28,480 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.6666666666666665) internal successors, (24), 10 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:39:28,480 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 74 transitions. [2022-02-20 23:39:28,481 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:39:28,481 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:28,481 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:28,500 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 23:39:28,699 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:28,700 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:28,700 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:28,700 INFO L85 PathProgramCache]: Analyzing trace with hash -1862804906, now seen corresponding path program 1 times [2022-02-20 23:39:28,700 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:28,701 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1526237959] [2022-02-20 23:39:28,701 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:28,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:28,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:28,765 INFO L290 TraceCheckUtils]: 0: Hoare triple {3360#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3360#true} is VALID [2022-02-20 23:39:28,765 INFO L290 TraceCheckUtils]: 1: Hoare triple {3360#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {3360#true} is VALID [2022-02-20 23:39:28,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {3360#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3360#true} is VALID [2022-02-20 23:39:28,765 INFO L290 TraceCheckUtils]: 3: Hoare triple {3360#true} assume !(main_~length2~0#1 < 1); {3360#true} is VALID [2022-02-20 23:39:28,766 INFO L290 TraceCheckUtils]: 4: Hoare triple {3360#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {3362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:28,767 INFO L290 TraceCheckUtils]: 5: Hoare triple {3362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:28,767 INFO L290 TraceCheckUtils]: 6: Hoare triple {3362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} main_~i~1#1 := 0; {3363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:28,768 INFO L290 TraceCheckUtils]: 7: Hoare triple {3363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {3363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:28,768 INFO L290 TraceCheckUtils]: 8: Hoare triple {3363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {3363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:28,769 INFO L290 TraceCheckUtils]: 9: Hoare triple {3363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} havoc main_#t~nondet20#1; {3363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:28,770 INFO L290 TraceCheckUtils]: 10: Hoare triple {3363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {3364#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} is VALID [2022-02-20 23:39:28,770 INFO L290 TraceCheckUtils]: 11: Hoare triple {3364#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= (+ |ULTIMATE.start_main_~length2~0#1| (* (- 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {3365#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:39:28,771 INFO L290 TraceCheckUtils]: 12: Hoare triple {3365#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !(1 + (main_~nondetString2~0#1.offset + main_~i~1#1) <= #length[main_~nondetString2~0#1.base] && 0 <= main_~nondetString2~0#1.offset + main_~i~1#1); {3361#false} is VALID [2022-02-20 23:39:28,771 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:39:28,771 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:28,771 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1526237959] [2022-02-20 23:39:28,771 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1526237959] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:28,772 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2144355639] [2022-02-20 23:39:28,772 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:28,772 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:28,772 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:28,792 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:39:28,793 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:39:28,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:28,834 INFO L263 TraceCheckSpWp]: Trace formula consists of 73 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:39:28,840 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:28,841 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:28,897 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:39:28,897 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:39:29,014 INFO L290 TraceCheckUtils]: 0: Hoare triple {3360#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3360#true} is VALID [2022-02-20 23:39:29,014 INFO L290 TraceCheckUtils]: 1: Hoare triple {3360#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {3360#true} is VALID [2022-02-20 23:39:29,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {3360#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3360#true} is VALID [2022-02-20 23:39:29,014 INFO L290 TraceCheckUtils]: 3: Hoare triple {3360#true} assume !(main_~length2~0#1 < 1); {3360#true} is VALID [2022-02-20 23:39:29,015 INFO L290 TraceCheckUtils]: 4: Hoare triple {3360#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {3381#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:29,016 INFO L290 TraceCheckUtils]: 5: Hoare triple {3381#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3381#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:29,016 INFO L290 TraceCheckUtils]: 6: Hoare triple {3381#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_~i~1#1 := 0; {3388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:29,016 INFO L290 TraceCheckUtils]: 7: Hoare triple {3388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {3388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:29,017 INFO L290 TraceCheckUtils]: 8: Hoare triple {3388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {3388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:29,017 INFO L290 TraceCheckUtils]: 9: Hoare triple {3388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {3388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:29,018 INFO L290 TraceCheckUtils]: 10: Hoare triple {3388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {3401#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:39:29,019 INFO L290 TraceCheckUtils]: 11: Hoare triple {3401#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {3365#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:39:29,019 INFO L290 TraceCheckUtils]: 12: Hoare triple {3365#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !(1 + (main_~nondetString2~0#1.offset + main_~i~1#1) <= #length[main_~nondetString2~0#1.base] && 0 <= main_~nondetString2~0#1.offset + main_~i~1#1); {3361#false} is VALID [2022-02-20 23:39:29,019 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:39:29,019 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:29,339 INFO L290 TraceCheckUtils]: 12: Hoare triple {3408#(and (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|)) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(1 + (main_~nondetString2~0#1.offset + main_~i~1#1) <= #length[main_~nondetString2~0#1.base] && 0 <= main_~nondetString2~0#1.offset + main_~i~1#1); {3361#false} is VALID [2022-02-20 23:39:29,340 INFO L290 TraceCheckUtils]: 11: Hoare triple {3412#(or (and (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|)) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (not (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {3408#(and (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|)) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:29,341 INFO L290 TraceCheckUtils]: 10: Hoare triple {3416#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1))))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {3412#(or (and (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|)) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (not (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:29,341 INFO L290 TraceCheckUtils]: 9: Hoare triple {3416#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1))))} havoc main_#t~nondet20#1; {3416#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1))))} is VALID [2022-02-20 23:39:29,342 INFO L290 TraceCheckUtils]: 8: Hoare triple {3416#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1))))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {3416#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1))))} is VALID [2022-02-20 23:39:29,343 INFO L290 TraceCheckUtils]: 7: Hoare triple {3416#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1))))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {3416#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1))))} is VALID [2022-02-20 23:39:29,343 INFO L290 TraceCheckUtils]: 6: Hoare triple {3429#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (or (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} main_~i~1#1 := 0; {3416#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|))) (or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1| 1))))} is VALID [2022-02-20 23:39:29,344 INFO L290 TraceCheckUtils]: 5: Hoare triple {3429#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (or (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3429#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (or (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:29,345 INFO L290 TraceCheckUtils]: 4: Hoare triple {3360#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {3429#(and (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (or (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:29,345 INFO L290 TraceCheckUtils]: 3: Hoare triple {3360#true} assume !(main_~length2~0#1 < 1); {3360#true} is VALID [2022-02-20 23:39:29,345 INFO L290 TraceCheckUtils]: 2: Hoare triple {3360#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3360#true} is VALID [2022-02-20 23:39:29,345 INFO L290 TraceCheckUtils]: 1: Hoare triple {3360#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {3360#true} is VALID [2022-02-20 23:39:29,345 INFO L290 TraceCheckUtils]: 0: Hoare triple {3360#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3360#true} is VALID [2022-02-20 23:39:29,346 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:39:29,346 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2144355639] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:29,346 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:29,346 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 12 [2022-02-20 23:39:29,346 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [139754034] [2022-02-20 23:39:29,346 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:29,347 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 13 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:39:29,347 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:29,347 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 13 states, 12 states have (on average 2.5) internal successors, (30), 13 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:39:29,368 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:39:29,369 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:39:29,369 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:29,369 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:39:29,369 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=105, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:39:29,370 INFO L87 Difference]: Start difference. First operand 62 states and 74 transitions. Second operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 13 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:39:29,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:29,907 INFO L93 Difference]: Finished difference Result 130 states and 153 transitions. [2022-02-20 23:39:29,907 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:39:29,908 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 13 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 13 [2022-02-20 23:39:29,908 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:29,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 13 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:39:29,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 141 transitions. [2022-02-20 23:39:29,909 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 12 states have (on average 2.5) internal successors, (30), 13 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:39:29,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 141 transitions. [2022-02-20 23:39:29,909 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 141 transitions. [2022-02-20 23:39:30,024 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 141 edges. 141 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:30,025 INFO L225 Difference]: With dead ends: 130 [2022-02-20 23:39:30,025 INFO L226 Difference]: Without dead ends: 130 [2022-02-20 23:39:30,026 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 17 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 52 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=85, Invalid=155, Unknown=0, NotChecked=0, Total=240 [2022-02-20 23:39:30,026 INFO L933 BasicCegarLoop]: 88 mSDtfsCounter, 257 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 182 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 257 SdHoareTripleChecker+Valid, 293 SdHoareTripleChecker+Invalid, 192 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 182 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:30,026 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [257 Valid, 293 Invalid, 192 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 182 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:30,027 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 130 states. [2022-02-20 23:39:30,028 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 130 to 59. [2022-02-20 23:39:30,028 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:30,028 INFO L82 GeneralOperation]: Start isEquivalent. First operand 130 states. Second operand has 59 states, 48 states have (on average 1.4583333333333333) internal successors, (70), 58 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:39:30,028 INFO L74 IsIncluded]: Start isIncluded. First operand 130 states. Second operand has 59 states, 48 states have (on average 1.4583333333333333) internal successors, (70), 58 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:39:30,028 INFO L87 Difference]: Start difference. First operand 130 states. Second operand has 59 states, 48 states have (on average 1.4583333333333333) internal successors, (70), 58 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:39:30,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,030 INFO L93 Difference]: Finished difference Result 130 states and 153 transitions. [2022-02-20 23:39:30,030 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 153 transitions. [2022-02-20 23:39:30,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:30,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:30,030 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 48 states have (on average 1.4583333333333333) internal successors, (70), 58 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) Second operand 130 states. [2022-02-20 23:39:30,031 INFO L87 Difference]: Start difference. First operand has 59 states, 48 states have (on average 1.4583333333333333) internal successors, (70), 58 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) Second operand 130 states. [2022-02-20 23:39:30,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,032 INFO L93 Difference]: Finished difference Result 130 states and 153 transitions. [2022-02-20 23:39:30,032 INFO L276 IsEmpty]: Start isEmpty. Operand 130 states and 153 transitions. [2022-02-20 23:39:30,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:30,033 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:30,033 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:30,033 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:30,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 48 states have (on average 1.4583333333333333) internal successors, (70), 58 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:39:30,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 70 transitions. [2022-02-20 23:39:30,050 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 70 transitions. Word has length 13 [2022-02-20 23:39:30,051 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:30,051 INFO L470 AbstractCegarLoop]: Abstraction has 59 states and 70 transitions. [2022-02-20 23:39:30,051 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 12 states have (on average 2.5) internal successors, (30), 13 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:39:30,051 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 70 transitions. [2022-02-20 23:39:30,051 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-02-20 23:39:30,051 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:30,051 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:30,071 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:39:30,268 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,SelfDestructingSolverStorable9 [2022-02-20 23:39:30,268 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr18ASSERT_VIOLATIONMEMORY_LEAK === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:30,269 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:30,269 INFO L85 PathProgramCache]: Analyzing trace with hash 172810813, now seen corresponding path program 1 times [2022-02-20 23:39:30,269 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:30,269 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1932750196] [2022-02-20 23:39:30,269 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:30,269 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:30,290 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:30,333 INFO L290 TraceCheckUtils]: 0: Hoare triple {3902#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3902#true} is VALID [2022-02-20 23:39:30,333 INFO L290 TraceCheckUtils]: 1: Hoare triple {3902#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {3904#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:39:30,334 INFO L290 TraceCheckUtils]: 2: Hoare triple {3904#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3904#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:39:30,334 INFO L290 TraceCheckUtils]: 3: Hoare triple {3904#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {3904#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:39:30,335 INFO L290 TraceCheckUtils]: 4: Hoare triple {3904#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {3905#(and (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} is VALID [2022-02-20 23:39:30,335 INFO L290 TraceCheckUtils]: 5: Hoare triple {3905#(and (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3905#(and (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} is VALID [2022-02-20 23:39:30,336 INFO L290 TraceCheckUtils]: 6: Hoare triple {3905#(and (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} main_~i~1#1 := 0; {3905#(and (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} is VALID [2022-02-20 23:39:30,336 INFO L290 TraceCheckUtils]: 7: Hoare triple {3905#(and (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {3905#(and (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} is VALID [2022-02-20 23:39:30,337 INFO L290 TraceCheckUtils]: 8: Hoare triple {3905#(and (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {3906#(and (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} is VALID [2022-02-20 23:39:30,337 INFO L290 TraceCheckUtils]: 9: Hoare triple {3906#(and (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {3906#(and (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} is VALID [2022-02-20 23:39:30,338 INFO L290 TraceCheckUtils]: 10: Hoare triple {3906#(and (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {3906#(and (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} is VALID [2022-02-20 23:39:30,338 INFO L290 TraceCheckUtils]: 11: Hoare triple {3906#(and (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} assume 0 == cstrncmp_~n#1;cstrncmp_#res#1 := 0; {3906#(and (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} is VALID [2022-02-20 23:39:30,339 INFO L290 TraceCheckUtils]: 12: Hoare triple {3906#(and (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc16#1.base| 0) |ULTIMATE.start_main_#t~malloc15#1.base| 0) |ULTIMATE.start_main_old_#valid#1|) (not (= |ULTIMATE.start_main_#t~malloc16#1.base| |ULTIMATE.start_main_#t~malloc15#1.base|)))} main_#t~ret22#1 := cstrncmp_#res#1;assume { :end_inline_cstrncmp } true;assume -2147483648 <= main_#t~ret22#1 && main_#t~ret22#1 <= 2147483647;main_#res#1 := main_#t~ret22#1;havoc main_#t~nondet21#1;havoc main_#t~ret22#1;call ULTIMATE.dealloc(main_#t~malloc15#1.base, main_#t~malloc15#1.offset);havoc main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call ULTIMATE.dealloc(main_#t~malloc16#1.base, main_#t~malloc16#1.offset);havoc main_#t~malloc16#1.base, main_#t~malloc16#1.offset; {3904#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:39:30,339 INFO L290 TraceCheckUtils]: 13: Hoare triple {3904#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {3903#false} is VALID [2022-02-20 23:39:30,339 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:39:30,340 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:30,340 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1932750196] [2022-02-20 23:39:30,340 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1932750196] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:30,340 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:30,340 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:30,340 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [501345805] [2022-02-20 23:39:30,340 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:30,341 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.5) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:39:30,341 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:30,341 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 3.5) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,350 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:39:30,351 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:39:30,351 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:30,351 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:39:30,351 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:39:30,352 INFO L87 Difference]: Start difference. First operand 59 states and 70 transitions. Second operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,453 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,454 INFO L93 Difference]: Finished difference Result 58 states and 69 transitions. [2022-02-20 23:39:30,454 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:30,454 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 3.5) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 14 [2022-02-20 23:39:30,454 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:30,454 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 56 transitions. [2022-02-20 23:39:30,455 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 3.5) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 56 transitions. [2022-02-20 23:39:30,455 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 56 transitions. [2022-02-20 23:39:30,490 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:39:30,491 INFO L225 Difference]: With dead ends: 58 [2022-02-20 23:39:30,491 INFO L226 Difference]: Without dead ends: 53 [2022-02-20 23:39:30,491 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 5 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:39:30,491 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 89 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 76 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:30,492 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 76 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:30,492 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-02-20 23:39:30,493 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 53. [2022-02-20 23:39:30,493 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:30,493 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 53 states, 43 states have (on average 1.4186046511627908) internal successors, (61), 52 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:39:30,493 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 53 states, 43 states have (on average 1.4186046511627908) internal successors, (61), 52 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:39:30,493 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 53 states, 43 states have (on average 1.4186046511627908) internal successors, (61), 52 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:39:30,494 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,494 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-02-20 23:39:30,494 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:30,494 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:30,494 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:30,494 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 43 states have (on average 1.4186046511627908) internal successors, (61), 52 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 53 states. [2022-02-20 23:39:30,495 INFO L87 Difference]: Start difference. First operand has 53 states, 43 states have (on average 1.4186046511627908) internal successors, (61), 52 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 53 states. [2022-02-20 23:39:30,495 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,495 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-02-20 23:39:30,495 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:30,495 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:30,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:30,496 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:30,496 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:30,496 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 43 states have (on average 1.4186046511627908) internal successors, (61), 52 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:39:30,496 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 61 transitions. [2022-02-20 23:39:30,496 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 61 transitions. Word has length 14 [2022-02-20 23:39:30,497 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:30,497 INFO L470 AbstractCegarLoop]: Abstraction has 53 states and 61 transitions. [2022-02-20 23:39:30,497 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 3.5) internal successors, (14), 5 states have internal predecessors, (14), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,497 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:30,497 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 23:39:30,497 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:30,497 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:30,497 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 23:39:30,498 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:30,498 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:30,498 INFO L85 PathProgramCache]: Analyzing trace with hash 1062175016, now seen corresponding path program 1 times [2022-02-20 23:39:30,498 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:30,498 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [4610236] [2022-02-20 23:39:30,498 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:30,498 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:30,518 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:30,536 INFO L290 TraceCheckUtils]: 0: Hoare triple {4126#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4126#true} is VALID [2022-02-20 23:39:30,536 INFO L290 TraceCheckUtils]: 1: Hoare triple {4126#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {4126#true} is VALID [2022-02-20 23:39:30,536 INFO L290 TraceCheckUtils]: 2: Hoare triple {4126#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {4126#true} is VALID [2022-02-20 23:39:30,536 INFO L290 TraceCheckUtils]: 3: Hoare triple {4126#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {4126#true} is VALID [2022-02-20 23:39:30,537 INFO L290 TraceCheckUtils]: 4: Hoare triple {4126#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {4126#true} is VALID [2022-02-20 23:39:30,537 INFO L290 TraceCheckUtils]: 5: Hoare triple {4126#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4126#true} is VALID [2022-02-20 23:39:30,537 INFO L290 TraceCheckUtils]: 6: Hoare triple {4126#true} main_~i~1#1 := 0; {4126#true} is VALID [2022-02-20 23:39:30,537 INFO L290 TraceCheckUtils]: 7: Hoare triple {4126#true} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {4126#true} is VALID [2022-02-20 23:39:30,537 INFO L290 TraceCheckUtils]: 8: Hoare triple {4126#true} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {4128#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:39:30,537 INFO L290 TraceCheckUtils]: 9: Hoare triple {4128#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {4128#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:39:30,538 INFO L290 TraceCheckUtils]: 10: Hoare triple {4128#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {4129#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1)} is VALID [2022-02-20 23:39:30,538 INFO L290 TraceCheckUtils]: 11: Hoare triple {4129#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1)} assume !(0 == cstrncmp_~n#1); {4129#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1)} is VALID [2022-02-20 23:39:30,538 INFO L290 TraceCheckUtils]: 12: Hoare triple {4129#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {4129#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1)} is VALID [2022-02-20 23:39:30,539 INFO L290 TraceCheckUtils]: 13: Hoare triple {4129#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1)} assume cstrncmp_#t~short5#1; {4129#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1)} is VALID [2022-02-20 23:39:30,539 INFO L290 TraceCheckUtils]: 14: Hoare triple {4129#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1)} assume !(1 == #valid[cstrncmp_~s1#1.base]); {4127#false} is VALID [2022-02-20 23:39:30,539 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:39:30,539 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:30,539 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [4610236] [2022-02-20 23:39:30,539 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [4610236] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:30,539 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:30,539 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:30,540 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [935901072] [2022-02-20 23:39:30,540 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:30,540 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 5.0) internal successors, (15), 4 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 23:39:30,540 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:30,540 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 5.0) internal successors, (15), 4 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,549 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:30,549 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:30,549 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:30,549 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:30,549 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:30,549 INFO L87 Difference]: Start difference. First operand 53 states and 61 transitions. Second operand has 4 states, 3 states have (on average 5.0) internal successors, (15), 4 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,605 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,606 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:39:30,606 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:30,606 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 5.0) internal successors, (15), 4 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 23:39:30,606 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:30,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 5.0) internal successors, (15), 4 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 47 transitions. [2022-02-20 23:39:30,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 5.0) internal successors, (15), 4 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 47 transitions. [2022-02-20 23:39:30,607 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 47 transitions. [2022-02-20 23:39:30,639 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:39:30,640 INFO L225 Difference]: With dead ends: 50 [2022-02-20 23:39:30,640 INFO L226 Difference]: Without dead ends: 50 [2022-02-20 23:39:30,640 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:39:30,640 INFO L933 BasicCegarLoop]: 29 mSDtfsCounter, 53 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 29 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:30,641 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [53 Valid, 46 Invalid, 29 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:30,641 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-02-20 23:39:30,642 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2022-02-20 23:39:30,642 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:30,642 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 50 states, 43 states have (on average 1.3488372093023255) internal successors, (58), 49 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,642 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 50 states, 43 states have (on average 1.3488372093023255) internal successors, (58), 49 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,642 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 50 states, 43 states have (on average 1.3488372093023255) internal successors, (58), 49 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,642 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:39:30,642 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-02-20 23:39:30,643 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:30,643 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:30,643 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 43 states have (on average 1.3488372093023255) internal successors, (58), 49 states have internal predecessors, (58), 0 states have call successors, (0), 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:39:30,643 INFO L87 Difference]: Start difference. First operand has 50 states, 43 states have (on average 1.3488372093023255) internal successors, (58), 49 states have internal predecessors, (58), 0 states have call successors, (0), 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:39:30,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,643 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:39:30,643 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-02-20 23:39:30,643 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:30,643 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:30,643 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:30,644 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:30,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 43 states have (on average 1.3488372093023255) internal successors, (58), 49 states have internal predecessors, (58), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 58 transitions. [2022-02-20 23:39:30,644 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 58 transitions. Word has length 15 [2022-02-20 23:39:30,644 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:30,644 INFO L470 AbstractCegarLoop]: Abstraction has 50 states and 58 transitions. [2022-02-20 23:39:30,644 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 5.0) internal successors, (15), 4 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,644 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-02-20 23:39:30,644 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-02-20 23:39:30,644 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:30,644 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:30,645 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2022-02-20 23:39:30,645 INFO L402 AbstractCegarLoop]: === Iteration 13 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:30,645 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:30,645 INFO L85 PathProgramCache]: Analyzing trace with hash 1062175017, now seen corresponding path program 1 times [2022-02-20 23:39:30,645 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:30,645 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1379164846] [2022-02-20 23:39:30,645 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:30,645 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:30,658 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:30,691 INFO L290 TraceCheckUtils]: 0: Hoare triple {4334#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4334#true} is VALID [2022-02-20 23:39:30,691 INFO L290 TraceCheckUtils]: 1: Hoare triple {4334#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {4334#true} is VALID [2022-02-20 23:39:30,691 INFO L290 TraceCheckUtils]: 2: Hoare triple {4334#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {4336#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:30,692 INFO L290 TraceCheckUtils]: 3: Hoare triple {4336#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {4336#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:30,692 INFO L290 TraceCheckUtils]: 4: Hoare triple {4336#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {4337#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,693 INFO L290 TraceCheckUtils]: 5: Hoare triple {4337#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4337#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,693 INFO L290 TraceCheckUtils]: 6: Hoare triple {4337#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {4337#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,693 INFO L290 TraceCheckUtils]: 7: Hoare triple {4337#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {4337#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,694 INFO L290 TraceCheckUtils]: 8: Hoare triple {4337#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {4338#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:30,694 INFO L290 TraceCheckUtils]: 9: Hoare triple {4338#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {4338#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:30,695 INFO L290 TraceCheckUtils]: 10: Hoare triple {4338#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {4339#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:30,695 INFO L290 TraceCheckUtils]: 11: Hoare triple {4339#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(0 == cstrncmp_~n#1); {4339#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:30,696 INFO L290 TraceCheckUtils]: 12: Hoare triple {4339#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {4339#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:30,696 INFO L290 TraceCheckUtils]: 13: Hoare triple {4339#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {4339#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:30,696 INFO L290 TraceCheckUtils]: 14: Hoare triple {4339#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {4335#false} is VALID [2022-02-20 23:39:30,696 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:39:30,697 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:30,697 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1379164846] [2022-02-20 23:39:30,697 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1379164846] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:30,697 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:30,697 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:39:30,697 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1163907297] [2022-02-20 23:39:30,697 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:30,697 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 6 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 23:39:30,697 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:30,697 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 3.0) internal successors, (15), 6 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:30,707 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:39:30,707 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:30,707 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:39:30,707 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:39:30,707 INFO L87 Difference]: Start difference. First operand 50 states and 58 transitions. Second operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 6 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,850 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,850 INFO L93 Difference]: Finished difference Result 67 states and 77 transitions. [2022-02-20 23:39:30,850 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:39:30,850 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 6 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 15 [2022-02-20 23:39:30,850 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:30,850 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 6 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,851 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 66 transitions. [2022-02-20 23:39:30,851 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 3.0) internal successors, (15), 6 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,851 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 66 transitions. [2022-02-20 23:39:30,851 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 66 transitions. [2022-02-20 23:39:30,900 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:30,900 INFO L225 Difference]: With dead ends: 67 [2022-02-20 23:39:30,900 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 23:39:30,901 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:39:30,901 INFO L933 BasicCegarLoop]: 26 mSDtfsCounter, 178 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 178 SdHoareTripleChecker+Valid, 59 SdHoareTripleChecker+Invalid, 46 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:30,901 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [178 Valid, 59 Invalid, 46 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:30,902 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 23:39:30,902 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 59. [2022-02-20 23:39:30,902 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:30,902 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 59 states, 52 states have (on average 1.3846153846153846) internal successors, (72), 58 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,902 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 59 states, 52 states have (on average 1.3846153846153846) internal successors, (72), 58 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,902 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 59 states, 52 states have (on average 1.3846153846153846) internal successors, (72), 58 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,903 INFO L93 Difference]: Finished difference Result 67 states and 77 transitions. [2022-02-20 23:39:30,903 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 77 transitions. [2022-02-20 23:39:30,903 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:30,903 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:30,903 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 52 states have (on average 1.3846153846153846) internal successors, (72), 58 states have internal predecessors, (72), 0 states have call successors, (0), 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:39:30,903 INFO L87 Difference]: Start difference. First operand has 59 states, 52 states have (on average 1.3846153846153846) internal successors, (72), 58 states have internal predecessors, (72), 0 states have call successors, (0), 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:39:30,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:30,904 INFO L93 Difference]: Finished difference Result 67 states and 77 transitions. [2022-02-20 23:39:30,904 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 77 transitions. [2022-02-20 23:39:30,904 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:30,904 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:30,904 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:30,904 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:30,904 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 52 states have (on average 1.3846153846153846) internal successors, (72), 58 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 72 transitions. [2022-02-20 23:39:30,905 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 72 transitions. Word has length 15 [2022-02-20 23:39:30,905 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:30,905 INFO L470 AbstractCegarLoop]: Abstraction has 59 states and 72 transitions. [2022-02-20 23:39:30,905 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 3.0) internal successors, (15), 6 states have internal predecessors, (15), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,905 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 72 transitions. [2022-02-20 23:39:30,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:39:30,905 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:30,905 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:30,905 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-20 23:39:30,905 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr10REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:30,908 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:30,908 INFO L85 PathProgramCache]: Analyzing trace with hash -1432312828, now seen corresponding path program 1 times [2022-02-20 23:39:30,908 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:30,908 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1720130646] [2022-02-20 23:39:30,908 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:30,908 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:30,923 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:30,961 INFO L290 TraceCheckUtils]: 0: Hoare triple {4606#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4606#true} is VALID [2022-02-20 23:39:30,961 INFO L290 TraceCheckUtils]: 1: Hoare triple {4606#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {4606#true} is VALID [2022-02-20 23:39:30,961 INFO L290 TraceCheckUtils]: 2: Hoare triple {4606#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {4606#true} is VALID [2022-02-20 23:39:30,962 INFO L290 TraceCheckUtils]: 3: Hoare triple {4606#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {4606#true} is VALID [2022-02-20 23:39:30,962 INFO L290 TraceCheckUtils]: 4: Hoare triple {4606#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {4606#true} is VALID [2022-02-20 23:39:30,962 INFO L290 TraceCheckUtils]: 5: Hoare triple {4606#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4606#true} is VALID [2022-02-20 23:39:30,962 INFO L290 TraceCheckUtils]: 6: Hoare triple {4606#true} main_~i~1#1 := 0; {4606#true} is VALID [2022-02-20 23:39:30,962 INFO L290 TraceCheckUtils]: 7: Hoare triple {4606#true} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {4606#true} is VALID [2022-02-20 23:39:30,962 INFO L290 TraceCheckUtils]: 8: Hoare triple {4606#true} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {4606#true} is VALID [2022-02-20 23:39:30,963 INFO L290 TraceCheckUtils]: 9: Hoare triple {4606#true} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {4608#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:30,963 INFO L290 TraceCheckUtils]: 10: Hoare triple {4608#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} is VALID [2022-02-20 23:39:30,963 INFO L290 TraceCheckUtils]: 11: Hoare triple {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} assume !(0 == cstrncmp_~n#1); {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} is VALID [2022-02-20 23:39:30,964 INFO L290 TraceCheckUtils]: 12: Hoare triple {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} is VALID [2022-02-20 23:39:30,964 INFO L290 TraceCheckUtils]: 13: Hoare triple {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} assume cstrncmp_#t~short5#1; {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} is VALID [2022-02-20 23:39:30,964 INFO L290 TraceCheckUtils]: 14: Hoare triple {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} is VALID [2022-02-20 23:39:30,965 INFO L290 TraceCheckUtils]: 15: Hoare triple {4609#(= (select |#valid| |ULTIMATE.start_cstrncmp_~s2#1.base|) 1)} assume !(1 == #valid[cstrncmp_~s2#1.base]); {4607#false} is VALID [2022-02-20 23:39:30,965 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:39:30,965 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:30,965 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1720130646] [2022-02-20 23:39:30,965 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1720130646] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:30,965 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:30,966 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:30,967 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1419403311] [2022-02-20 23:39:30,967 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:30,968 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 5.333333333333333) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:39:30,968 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:30,968 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 5.333333333333333) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:30,979 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:30,979 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:30,979 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:30,979 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:30,979 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:30,980 INFO L87 Difference]: Start difference. First operand 59 states and 72 transitions. Second operand has 4 states, 3 states have (on average 5.333333333333333) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,073 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-02-20 23:39:31,073 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:31,073 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 5.333333333333333) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:39:31,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:31,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 5.333333333333333) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-02-20 23:39:31,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 5.333333333333333) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-02-20 23:39:31,074 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-02-20 23:39:31,098 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:39:31,099 INFO L225 Difference]: With dead ends: 57 [2022-02-20 23:39:31,099 INFO L226 Difference]: Without dead ends: 57 [2022-02-20 23:39:31,099 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:39:31,099 INFO L933 BasicCegarLoop]: 30 mSDtfsCounter, 49 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 21 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 21 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:31,099 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [49 Valid, 47 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 21 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:31,100 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-02-20 23:39:31,100 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-02-20 23:39:31,100 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:31,100 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.3269230769230769) internal successors, (69), 56 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:39:31,100 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.3269230769230769) internal successors, (69), 56 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:39:31,101 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.3269230769230769) internal successors, (69), 56 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:39:31,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,101 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-02-20 23:39:31,101 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-02-20 23:39:31,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:31,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:31,101 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 52 states have (on average 1.3269230769230769) internal successors, (69), 56 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 57 states. [2022-02-20 23:39:31,101 INFO L87 Difference]: Start difference. First operand has 57 states, 52 states have (on average 1.3269230769230769) internal successors, (69), 56 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 57 states. [2022-02-20 23:39:31,102 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,102 INFO L93 Difference]: Finished difference Result 57 states and 69 transitions. [2022-02-20 23:39:31,102 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-02-20 23:39:31,102 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:31,102 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:31,102 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:31,102 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:31,102 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 52 states have (on average 1.3269230769230769) internal successors, (69), 56 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:39:31,103 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 69 transitions. [2022-02-20 23:39:31,103 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 69 transitions. Word has length 16 [2022-02-20 23:39:31,103 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:31,103 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 69 transitions. [2022-02-20 23:39:31,103 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 5.333333333333333) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,103 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 69 transitions. [2022-02-20 23:39:31,103 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:39:31,103 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:31,103 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:31,103 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-02-20 23:39:31,103 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:31,104 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:31,104 INFO L85 PathProgramCache]: Analyzing trace with hash -1432312827, now seen corresponding path program 1 times [2022-02-20 23:39:31,104 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:31,104 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [183662545] [2022-02-20 23:39:31,104 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:31,104 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:31,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:31,154 INFO L290 TraceCheckUtils]: 0: Hoare triple {4842#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4842#true} is VALID [2022-02-20 23:39:31,155 INFO L290 TraceCheckUtils]: 1: Hoare triple {4842#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {4842#true} is VALID [2022-02-20 23:39:31,155 INFO L290 TraceCheckUtils]: 2: Hoare triple {4842#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {4842#true} is VALID [2022-02-20 23:39:31,155 INFO L290 TraceCheckUtils]: 3: Hoare triple {4842#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {4844#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:31,156 INFO L290 TraceCheckUtils]: 4: Hoare triple {4844#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:31,156 INFO L290 TraceCheckUtils]: 5: Hoare triple {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:31,159 INFO L290 TraceCheckUtils]: 6: Hoare triple {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_~i~1#1 := 0; {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:31,160 INFO L290 TraceCheckUtils]: 7: Hoare triple {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:31,160 INFO L290 TraceCheckUtils]: 8: Hoare triple {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:31,161 INFO L290 TraceCheckUtils]: 9: Hoare triple {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:31,161 INFO L290 TraceCheckUtils]: 10: Hoare triple {4845#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:31,162 INFO L290 TraceCheckUtils]: 11: Hoare triple {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} assume !(0 == cstrncmp_~n#1); {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:31,162 INFO L290 TraceCheckUtils]: 12: Hoare triple {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:31,162 INFO L290 TraceCheckUtils]: 13: Hoare triple {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} assume cstrncmp_#t~short5#1; {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:31,163 INFO L290 TraceCheckUtils]: 14: Hoare triple {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:31,163 INFO L290 TraceCheckUtils]: 15: Hoare triple {4846#(and (<= 1 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {4843#false} is VALID [2022-02-20 23:39:31,163 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:39:31,163 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:31,163 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [183662545] [2022-02-20 23:39:31,163 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [183662545] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:31,163 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:31,163 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:31,164 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1217773176] [2022-02-20 23:39:31,164 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:31,164 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:39:31,164 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:31,164 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:31,174 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:39:31,174 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:31,174 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:39:31,174 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:39:31,174 INFO L87 Difference]: Start difference. First operand 57 states and 69 transitions. Second operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,295 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,295 INFO L93 Difference]: Finished difference Result 61 states and 71 transitions. [2022-02-20 23:39:31,295 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:39:31,295 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 23:39:31,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:31,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-02-20 23:39:31,296 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-02-20 23:39:31,296 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 59 transitions. [2022-02-20 23:39:31,339 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:31,339 INFO L225 Difference]: With dead ends: 61 [2022-02-20 23:39:31,339 INFO L226 Difference]: Without dead ends: 58 [2022-02-20 23:39:31,339 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:39:31,340 INFO L933 BasicCegarLoop]: 24 mSDtfsCounter, 105 mSDsluCounter, 31 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 105 SdHoareTripleChecker+Valid, 55 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:31,340 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [105 Valid, 55 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:31,340 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 58 states. [2022-02-20 23:39:31,341 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 58 to 56. [2022-02-20 23:39:31,341 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:31,341 INFO L82 GeneralOperation]: Start isEquivalent. First operand 58 states. Second operand has 56 states, 51 states have (on average 1.2941176470588236) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,341 INFO L74 IsIncluded]: Start isIncluded. First operand 58 states. Second operand has 56 states, 51 states have (on average 1.2941176470588236) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,341 INFO L87 Difference]: Start difference. First operand 58 states. Second operand has 56 states, 51 states have (on average 1.2941176470588236) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,342 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,342 INFO L93 Difference]: Finished difference Result 58 states and 68 transitions. [2022-02-20 23:39:31,342 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 68 transitions. [2022-02-20 23:39:31,342 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:31,342 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:31,342 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 51 states have (on average 1.2941176470588236) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 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:39:31,346 INFO L87 Difference]: Start difference. First operand has 56 states, 51 states have (on average 1.2941176470588236) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 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:39:31,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,346 INFO L93 Difference]: Finished difference Result 58 states and 68 transitions. [2022-02-20 23:39:31,346 INFO L276 IsEmpty]: Start isEmpty. Operand 58 states and 68 transitions. [2022-02-20 23:39:31,346 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:31,346 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:31,347 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:31,347 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:31,347 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 51 states have (on average 1.2941176470588236) internal successors, (66), 55 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,347 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 66 transitions. [2022-02-20 23:39:31,347 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 66 transitions. Word has length 16 [2022-02-20 23:39:31,347 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:31,347 INFO L470 AbstractCegarLoop]: Abstraction has 56 states and 66 transitions. [2022-02-20 23:39:31,347 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 4.0) internal successors, (16), 5 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,348 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 66 transitions. [2022-02-20 23:39:31,348 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:39:31,348 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:31,348 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:31,348 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 23:39:31,348 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:31,348 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:31,348 INFO L85 PathProgramCache]: Analyzing trace with hash 1455987438, now seen corresponding path program 1 times [2022-02-20 23:39:31,348 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:31,350 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1311915663] [2022-02-20 23:39:31,351 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:31,351 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:31,369 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:31,383 INFO L290 TraceCheckUtils]: 0: Hoare triple {5086#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5086#true} is VALID [2022-02-20 23:39:31,383 INFO L290 TraceCheckUtils]: 1: Hoare triple {5086#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {5086#true} is VALID [2022-02-20 23:39:31,384 INFO L290 TraceCheckUtils]: 2: Hoare triple {5086#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {5086#true} is VALID [2022-02-20 23:39:31,384 INFO L290 TraceCheckUtils]: 3: Hoare triple {5086#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {5086#true} is VALID [2022-02-20 23:39:31,384 INFO L290 TraceCheckUtils]: 4: Hoare triple {5086#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {5086#true} is VALID [2022-02-20 23:39:31,384 INFO L290 TraceCheckUtils]: 5: Hoare triple {5086#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5086#true} is VALID [2022-02-20 23:39:31,384 INFO L290 TraceCheckUtils]: 6: Hoare triple {5086#true} main_~i~1#1 := 0; {5086#true} is VALID [2022-02-20 23:39:31,384 INFO L290 TraceCheckUtils]: 7: Hoare triple {5086#true} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {5086#true} is VALID [2022-02-20 23:39:31,384 INFO L290 TraceCheckUtils]: 8: Hoare triple {5086#true} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {5086#true} is VALID [2022-02-20 23:39:31,384 INFO L290 TraceCheckUtils]: 9: Hoare triple {5086#true} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {5086#true} is VALID [2022-02-20 23:39:31,385 INFO L290 TraceCheckUtils]: 10: Hoare triple {5086#true} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {5086#true} is VALID [2022-02-20 23:39:31,385 INFO L290 TraceCheckUtils]: 11: Hoare triple {5086#true} assume !(0 == cstrncmp_~n#1); {5086#true} is VALID [2022-02-20 23:39:31,385 INFO L290 TraceCheckUtils]: 12: Hoare triple {5086#true} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {5086#true} is VALID [2022-02-20 23:39:31,385 INFO L290 TraceCheckUtils]: 13: Hoare triple {5086#true} assume !cstrncmp_#t~short5#1; {5088#(not |ULTIMATE.start_cstrncmp_#t~short5#1|)} is VALID [2022-02-20 23:39:31,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {5088#(not |ULTIMATE.start_cstrncmp_#t~short5#1|)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {5087#false} is VALID [2022-02-20 23:39:31,386 INFO L290 TraceCheckUtils]: 15: Hoare triple {5087#false} assume cstrncmp_#t~short7#1; {5087#false} is VALID [2022-02-20 23:39:31,386 INFO L290 TraceCheckUtils]: 16: Hoare triple {5087#false} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {5087#false} is VALID [2022-02-20 23:39:31,386 INFO L290 TraceCheckUtils]: 17: Hoare triple {5087#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {5087#false} is VALID [2022-02-20 23:39:31,386 INFO L290 TraceCheckUtils]: 18: Hoare triple {5087#false} assume cstrncmp_#t~short5#1; {5087#false} is VALID [2022-02-20 23:39:31,387 INFO L290 TraceCheckUtils]: 19: Hoare triple {5087#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {5087#false} is VALID [2022-02-20 23:39:31,387 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:31,387 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:31,387 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1311915663] [2022-02-20 23:39:31,387 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1311915663] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:31,387 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:31,387 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:31,387 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [443083180] [2022-02-20 23:39:31,387 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:31,388 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.666666666666667) internal successors, (20), 3 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 20 [2022-02-20 23:39:31,388 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:31,388 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 6.666666666666667) internal successors, (20), 3 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,399 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:31,399 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:39:31,399 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:31,405 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:39:31,405 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:39:31,405 INFO L87 Difference]: Start difference. First operand 56 states and 66 transitions. Second operand has 3 states, 3 states have (on average 6.666666666666667) internal successors, (20), 3 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,450 INFO L93 Difference]: Finished difference Result 58 states and 67 transitions. [2022-02-20 23:39:31,450 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:39:31,450 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 6.666666666666667) internal successors, (20), 3 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 20 [2022-02-20 23:39:31,450 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:31,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.666666666666667) internal successors, (20), 3 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,451 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 44 transitions. [2022-02-20 23:39:31,451 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 6.666666666666667) internal successors, (20), 3 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,452 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 44 transitions. [2022-02-20 23:39:31,452 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 44 transitions. [2022-02-20 23:39:31,479 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:39:31,480 INFO L225 Difference]: With dead ends: 58 [2022-02-20 23:39:31,480 INFO L226 Difference]: Without dead ends: 57 [2022-02-20 23:39:31,480 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:39:31,481 INFO L933 BasicCegarLoop]: 41 mSDtfsCounter, 0 mSDsluCounter, 35 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 76 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:31,481 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 76 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:31,481 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-02-20 23:39:31,482 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-02-20 23:39:31,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:31,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 56 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,495 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 56 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,496 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 56 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,496 INFO L93 Difference]: Finished difference Result 57 states and 66 transitions. [2022-02-20 23:39:31,496 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 66 transitions. [2022-02-20 23:39:31,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:31,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:31,497 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 56 states have internal predecessors, (66), 0 states have call successors, (0), 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 57 states. [2022-02-20 23:39:31,497 INFO L87 Difference]: Start difference. First operand has 57 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 56 states have internal predecessors, (66), 0 states have call successors, (0), 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 57 states. [2022-02-20 23:39:31,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,497 INFO L93 Difference]: Finished difference Result 57 states and 66 transitions. [2022-02-20 23:39:31,498 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 66 transitions. [2022-02-20 23:39:31,498 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:31,498 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:31,498 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:31,498 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:31,498 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 52 states have (on average 1.2692307692307692) internal successors, (66), 56 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,499 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 66 transitions. [2022-02-20 23:39:31,499 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 66 transitions. Word has length 20 [2022-02-20 23:39:31,499 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:31,499 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 66 transitions. [2022-02-20 23:39:31,499 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 6.666666666666667) internal successors, (20), 3 states have internal predecessors, (20), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:31,499 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 66 transitions. [2022-02-20 23:39:31,499 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 23:39:31,500 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:31,500 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:31,500 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2022-02-20 23:39:31,500 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:31,500 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:31,500 INFO L85 PathProgramCache]: Analyzing trace with hash 420786095, now seen corresponding path program 1 times [2022-02-20 23:39:31,500 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:31,501 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [391755695] [2022-02-20 23:39:31,501 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:31,501 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:31,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:31,531 INFO L290 TraceCheckUtils]: 0: Hoare triple {5320#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5320#true} is VALID [2022-02-20 23:39:31,531 INFO L290 TraceCheckUtils]: 1: Hoare triple {5320#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {5320#true} is VALID [2022-02-20 23:39:31,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {5320#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {5320#true} is VALID [2022-02-20 23:39:31,531 INFO L290 TraceCheckUtils]: 3: Hoare triple {5320#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {5320#true} is VALID [2022-02-20 23:39:31,544 INFO L290 TraceCheckUtils]: 4: Hoare triple {5320#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {5320#true} is VALID [2022-02-20 23:39:31,545 INFO L290 TraceCheckUtils]: 5: Hoare triple {5320#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5320#true} is VALID [2022-02-20 23:39:31,545 INFO L290 TraceCheckUtils]: 6: Hoare triple {5320#true} main_~i~1#1 := 0; {5320#true} is VALID [2022-02-20 23:39:31,545 INFO L290 TraceCheckUtils]: 7: Hoare triple {5320#true} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {5320#true} is VALID [2022-02-20 23:39:31,545 INFO L290 TraceCheckUtils]: 8: Hoare triple {5320#true} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {5320#true} is VALID [2022-02-20 23:39:31,545 INFO L290 TraceCheckUtils]: 9: Hoare triple {5320#true} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {5320#true} is VALID [2022-02-20 23:39:31,545 INFO L290 TraceCheckUtils]: 10: Hoare triple {5320#true} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {5320#true} is VALID [2022-02-20 23:39:31,545 INFO L290 TraceCheckUtils]: 11: Hoare triple {5320#true} assume !(0 == cstrncmp_~n#1); {5320#true} is VALID [2022-02-20 23:39:31,546 INFO L290 TraceCheckUtils]: 12: Hoare triple {5320#true} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {5320#true} is VALID [2022-02-20 23:39:31,546 INFO L290 TraceCheckUtils]: 13: Hoare triple {5320#true} assume cstrncmp_#t~short5#1; {5320#true} is VALID [2022-02-20 23:39:31,546 INFO L290 TraceCheckUtils]: 14: Hoare triple {5320#true} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {5320#true} is VALID [2022-02-20 23:39:31,546 INFO L290 TraceCheckUtils]: 15: Hoare triple {5320#true} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {5320#true} is VALID [2022-02-20 23:39:31,546 INFO L290 TraceCheckUtils]: 16: Hoare triple {5320#true} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {5320#true} is VALID [2022-02-20 23:39:31,546 INFO L290 TraceCheckUtils]: 17: Hoare triple {5320#true} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {5320#true} is VALID [2022-02-20 23:39:31,547 INFO L290 TraceCheckUtils]: 18: Hoare triple {5320#true} assume cstrncmp_#t~short7#1; {5322#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:31,547 INFO L290 TraceCheckUtils]: 19: Hoare triple {5322#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {5321#false} is VALID [2022-02-20 23:39:31,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {5321#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {5321#false} is VALID [2022-02-20 23:39:31,547 INFO L290 TraceCheckUtils]: 21: Hoare triple {5321#false} assume cstrncmp_#t~short5#1; {5321#false} is VALID [2022-02-20 23:39:31,547 INFO L290 TraceCheckUtils]: 22: Hoare triple {5321#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {5321#false} is VALID [2022-02-20 23:39:31,548 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:31,548 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:31,548 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [391755695] [2022-02-20 23:39:31,548 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [391755695] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:31,548 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:31,548 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:31,548 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1329599976] [2022-02-20 23:39:31,548 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:31,549 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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 23 [2022-02-20 23:39:31,549 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:31,549 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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:39:31,562 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:39:31,562 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:39:31,562 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:31,562 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:39:31,563 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:39:31,563 INFO L87 Difference]: Start difference. First operand 57 states and 66 transitions. Second operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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:39:31,596 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,596 INFO L93 Difference]: Finished difference Result 58 states and 66 transitions. [2022-02-20 23:39:31,596 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:39:31,597 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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 23 [2022-02-20 23:39:31,597 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:31,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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:39:31,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-02-20 23:39:31,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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:39:31,598 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-02-20 23:39:31,598 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 43 transitions. [2022-02-20 23:39:31,632 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:31,633 INFO L225 Difference]: With dead ends: 58 [2022-02-20 23:39:31,633 INFO L226 Difference]: Without dead ends: 57 [2022-02-20 23:39:31,633 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:39:31,634 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 0 mSDsluCounter, 36 mSDsCounter, 0 mSdLazyCounter, 5 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 78 SdHoareTripleChecker+Invalid, 5 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 5 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:31,634 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 78 Invalid, 5 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 5 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:31,635 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-02-20 23:39:31,635 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-02-20 23:39:31,635 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:31,636 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 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:39:31,636 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 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:39:31,636 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 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:39:31,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,637 INFO L93 Difference]: Finished difference Result 57 states and 64 transitions. [2022-02-20 23:39:31,637 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 64 transitions. [2022-02-20 23:39:31,637 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:31,637 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:31,638 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 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 57 states. [2022-02-20 23:39:31,638 INFO L87 Difference]: Start difference. First operand has 57 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 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 57 states. [2022-02-20 23:39:31,638 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:31,639 INFO L93 Difference]: Finished difference Result 57 states and 64 transitions. [2022-02-20 23:39:31,639 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 64 transitions. [2022-02-20 23:39:31,639 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:31,639 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:31,639 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:31,639 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:31,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 52 states have (on average 1.2307692307692308) internal successors, (64), 56 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:39:31,640 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 64 transitions. [2022-02-20 23:39:31,640 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 64 transitions. Word has length 23 [2022-02-20 23:39:31,640 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:31,641 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 64 transitions. [2022-02-20 23:39:31,641 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 7.666666666666667) internal successors, (23), 3 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:39:31,641 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 64 transitions. [2022-02-20 23:39:31,641 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:39:31,641 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:31,641 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:31,642 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2022-02-20 23:39:31,642 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:31,642 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:31,642 INFO L85 PathProgramCache]: Analyzing trace with hash -2103285548, now seen corresponding path program 1 times [2022-02-20 23:39:31,642 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:31,643 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2110053739] [2022-02-20 23:39:31,643 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:31,643 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:31,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:31,776 INFO L290 TraceCheckUtils]: 0: Hoare triple {5554#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5554#true} is VALID [2022-02-20 23:39:31,776 INFO L290 TraceCheckUtils]: 1: Hoare triple {5554#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {5554#true} is VALID [2022-02-20 23:39:31,776 INFO L290 TraceCheckUtils]: 2: Hoare triple {5554#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {5556#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:31,777 INFO L290 TraceCheckUtils]: 3: Hoare triple {5556#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {5556#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:31,778 INFO L290 TraceCheckUtils]: 4: Hoare triple {5556#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {5557#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:31,779 INFO L290 TraceCheckUtils]: 5: Hoare triple {5557#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5557#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:31,780 INFO L290 TraceCheckUtils]: 6: Hoare triple {5557#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {5557#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:31,780 INFO L290 TraceCheckUtils]: 7: Hoare triple {5557#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {5557#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:31,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {5557#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {5558#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} is VALID [2022-02-20 23:39:31,781 INFO L290 TraceCheckUtils]: 9: Hoare triple {5558#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {5558#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} is VALID [2022-02-20 23:39:31,782 INFO L290 TraceCheckUtils]: 10: Hoare triple {5558#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,788 INFO L290 TraceCheckUtils]: 11: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !(0 == cstrncmp_~n#1); {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,788 INFO L290 TraceCheckUtils]: 12: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,789 INFO L290 TraceCheckUtils]: 13: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume cstrncmp_#t~short5#1; {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,789 INFO L290 TraceCheckUtils]: 14: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,789 INFO L290 TraceCheckUtils]: 15: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,790 INFO L290 TraceCheckUtils]: 16: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,790 INFO L290 TraceCheckUtils]: 17: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,790 INFO L290 TraceCheckUtils]: 18: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:31,791 INFO L290 TraceCheckUtils]: 19: Hoare triple {5559#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {5560#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:31,791 INFO L290 TraceCheckUtils]: 20: Hoare triple {5560#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {5561#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:31,791 INFO L290 TraceCheckUtils]: 21: Hoare triple {5561#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {5555#false} is VALID [2022-02-20 23:39:31,792 INFO L290 TraceCheckUtils]: 22: Hoare triple {5555#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {5555#false} is VALID [2022-02-20 23:39:31,792 INFO L290 TraceCheckUtils]: 23: Hoare triple {5555#false} assume cstrncmp_#t~short5#1; {5555#false} is VALID [2022-02-20 23:39:31,792 INFO L290 TraceCheckUtils]: 24: Hoare triple {5555#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {5555#false} is VALID [2022-02-20 23:39:31,793 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:31,793 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:31,793 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2110053739] [2022-02-20 23:39:31,793 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2110053739] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:31,794 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:31,794 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:39:31,794 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1143518786] [2022-02-20 23:39:31,794 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:31,794 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 25 [2022-02-20 23:39:31,794 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:31,794 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 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:39:31,868 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:31,868 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:39:31,868 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:31,868 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:39:31,869 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:39:31,869 INFO L87 Difference]: Start difference. First operand 57 states and 64 transitions. Second operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 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:39:32,141 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,141 INFO L93 Difference]: Finished difference Result 78 states and 85 transitions. [2022-02-20 23:39:32,141 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:39:32,141 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 states have internal predecessors, (25), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 25 [2022-02-20 23:39:32,142 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:32,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 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:39:32,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 65 transitions. [2022-02-20 23:39:32,142 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 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:39:32,142 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 65 transitions. [2022-02-20 23:39:32,143 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 65 transitions. [2022-02-20 23:39:32,190 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:32,190 INFO L225 Difference]: With dead ends: 78 [2022-02-20 23:39:32,190 INFO L226 Difference]: Without dead ends: 52 [2022-02-20 23:39:32,190 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=86, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:39:32,191 INFO L933 BasicCegarLoop]: 31 mSDtfsCounter, 51 mSDsluCounter, 149 mSDsCounter, 0 mSdLazyCounter, 68 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 180 SdHoareTripleChecker+Invalid, 70 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 68 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:32,191 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 180 Invalid, 70 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 68 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:32,191 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-02-20 23:39:32,192 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 52. [2022-02-20 23:39:32,192 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:32,192 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 52 states, 47 states have (on average 1.2127659574468086) internal successors, (57), 51 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:39:32,192 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 52 states, 47 states have (on average 1.2127659574468086) internal successors, (57), 51 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:39:32,192 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 52 states, 47 states have (on average 1.2127659574468086) internal successors, (57), 51 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:39:32,193 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,193 INFO L93 Difference]: Finished difference Result 52 states and 57 transitions. [2022-02-20 23:39:32,193 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 57 transitions. [2022-02-20 23:39:32,193 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:32,193 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:32,193 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 47 states have (on average 1.2127659574468086) internal successors, (57), 51 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 52 states. [2022-02-20 23:39:32,193 INFO L87 Difference]: Start difference. First operand has 52 states, 47 states have (on average 1.2127659574468086) internal successors, (57), 51 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 52 states. [2022-02-20 23:39:32,194 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,194 INFO L93 Difference]: Finished difference Result 52 states and 57 transitions. [2022-02-20 23:39:32,194 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 57 transitions. [2022-02-20 23:39:32,194 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:32,194 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:32,194 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:32,194 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:32,194 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 47 states have (on average 1.2127659574468086) internal successors, (57), 51 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:39:32,195 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 57 transitions. [2022-02-20 23:39:32,195 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 57 transitions. Word has length 25 [2022-02-20 23:39:32,195 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:32,195 INFO L470 AbstractCegarLoop]: Abstraction has 52 states and 57 transitions. [2022-02-20 23:39:32,195 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 8 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:39:32,195 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 57 transitions. [2022-02-20 23:39:32,195 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 23:39:32,195 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:32,195 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:32,195 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable17 [2022-02-20 23:39:32,195 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:32,196 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:32,196 INFO L85 PathProgramCache]: Analyzing trace with hash 386243414, now seen corresponding path program 1 times [2022-02-20 23:39:32,196 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:32,196 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1176659977] [2022-02-20 23:39:32,196 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:32,196 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:32,213 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:32,319 INFO L290 TraceCheckUtils]: 0: Hoare triple {5806#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5806#true} is VALID [2022-02-20 23:39:32,320 INFO L290 TraceCheckUtils]: 1: Hoare triple {5806#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {5806#true} is VALID [2022-02-20 23:39:32,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {5806#true} assume !(main_~length1~0#1 < 1); {5808#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:32,321 INFO L290 TraceCheckUtils]: 3: Hoare triple {5808#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {5808#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:32,322 INFO L290 TraceCheckUtils]: 4: Hoare triple {5808#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {5809#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (or (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (<= 2 |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:39:32,323 INFO L290 TraceCheckUtils]: 5: Hoare triple {5809#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (or (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< 0 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (<= 2 |ULTIMATE.start_main_~length1~0#1|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5810#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,323 INFO L290 TraceCheckUtils]: 6: Hoare triple {5810#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {5810#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,324 INFO L290 TraceCheckUtils]: 7: Hoare triple {5810#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {5810#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,324 INFO L290 TraceCheckUtils]: 8: Hoare triple {5810#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {5811#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} is VALID [2022-02-20 23:39:32,325 INFO L290 TraceCheckUtils]: 9: Hoare triple {5811#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {5811#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} is VALID [2022-02-20 23:39:32,325 INFO L290 TraceCheckUtils]: 10: Hoare triple {5811#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~nondetString1~0#1.offset|) 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,326 INFO L290 TraceCheckUtils]: 11: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !(0 == cstrncmp_~n#1); {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,326 INFO L290 TraceCheckUtils]: 12: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,326 INFO L290 TraceCheckUtils]: 13: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume cstrncmp_#t~short5#1; {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,327 INFO L290 TraceCheckUtils]: 14: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,327 INFO L290 TraceCheckUtils]: 15: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,327 INFO L290 TraceCheckUtils]: 16: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,328 INFO L290 TraceCheckUtils]: 17: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,328 INFO L290 TraceCheckUtils]: 18: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:32,328 INFO L290 TraceCheckUtils]: 19: Hoare triple {5812#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {5813#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:32,329 INFO L290 TraceCheckUtils]: 20: Hoare triple {5813#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {5814#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:32,329 INFO L290 TraceCheckUtils]: 21: Hoare triple {5814#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {5807#false} is VALID [2022-02-20 23:39:32,329 INFO L290 TraceCheckUtils]: 22: Hoare triple {5807#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {5807#false} is VALID [2022-02-20 23:39:32,329 INFO L290 TraceCheckUtils]: 23: Hoare triple {5807#false} assume cstrncmp_#t~short5#1; {5807#false} is VALID [2022-02-20 23:39:32,329 INFO L290 TraceCheckUtils]: 24: Hoare triple {5807#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {5807#false} is VALID [2022-02-20 23:39:32,330 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:32,330 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:32,330 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1176659977] [2022-02-20 23:39:32,330 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1176659977] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:32,330 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:32,330 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:39:32,330 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [447032848] [2022-02-20 23:39:32,330 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:32,331 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 9 states have internal predecessors, (25), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 25 [2022-02-20 23:39:32,331 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:32,331 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 9 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:39:32,349 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:32,349 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:39:32,349 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:32,350 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:39:32,350 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=55, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:39:32,350 INFO L87 Difference]: Start difference. First operand 52 states and 57 transitions. Second operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 9 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:39:32,687 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,687 INFO L93 Difference]: Finished difference Result 81 states and 88 transitions. [2022-02-20 23:39:32,687 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:39:32,687 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 9 states have internal predecessors, (25), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 25 [2022-02-20 23:39:32,704 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:32,704 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 9 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:39:32,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-02-20 23:39:32,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 9 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:39:32,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 65 transitions. [2022-02-20 23:39:32,705 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 65 transitions. [2022-02-20 23:39:32,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:32,755 INFO L225 Difference]: With dead ends: 81 [2022-02-20 23:39:32,755 INFO L226 Difference]: Without dead ends: 60 [2022-02-20 23:39:32,755 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=62, Invalid=120, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:39:32,756 INFO L933 BasicCegarLoop]: 27 mSDtfsCounter, 94 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 95 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 94 SdHoareTripleChecker+Valid, 184 SdHoareTripleChecker+Invalid, 98 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 95 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:32,756 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [94 Valid, 184 Invalid, 98 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 95 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:32,756 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 60 states. [2022-02-20 23:39:32,757 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 60 to 54. [2022-02-20 23:39:32,757 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:32,757 INFO L82 GeneralOperation]: Start isEquivalent. First operand 60 states. Second operand has 54 states, 49 states have (on average 1.2040816326530612) internal successors, (59), 53 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:32,757 INFO L74 IsIncluded]: Start isIncluded. First operand 60 states. Second operand has 54 states, 49 states have (on average 1.2040816326530612) internal successors, (59), 53 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:32,757 INFO L87 Difference]: Start difference. First operand 60 states. Second operand has 54 states, 49 states have (on average 1.2040816326530612) internal successors, (59), 53 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:32,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,758 INFO L93 Difference]: Finished difference Result 60 states and 65 transitions. [2022-02-20 23:39:32,758 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 65 transitions. [2022-02-20 23:39:32,758 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:32,758 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:32,758 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 49 states have (on average 1.2040816326530612) internal successors, (59), 53 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 60 states. [2022-02-20 23:39:32,759 INFO L87 Difference]: Start difference. First operand has 54 states, 49 states have (on average 1.2040816326530612) internal successors, (59), 53 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 60 states. [2022-02-20 23:39:32,759 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,759 INFO L93 Difference]: Finished difference Result 60 states and 65 transitions. [2022-02-20 23:39:32,760 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 65 transitions. [2022-02-20 23:39:32,760 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:32,760 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:32,760 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:32,760 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:32,760 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 49 states have (on average 1.2040816326530612) internal successors, (59), 53 states have internal predecessors, (59), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:32,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 59 transitions. [2022-02-20 23:39:32,761 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 59 transitions. Word has length 25 [2022-02-20 23:39:32,761 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:32,761 INFO L470 AbstractCegarLoop]: Abstraction has 54 states and 59 transitions. [2022-02-20 23:39:32,761 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 9 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:39:32,761 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 59 transitions. [2022-02-20 23:39:32,762 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 23:39:32,762 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:32,762 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:32,762 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18 [2022-02-20 23:39:32,762 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:32,763 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:32,763 INFO L85 PathProgramCache]: Analyzing trace with hash 235047385, now seen corresponding path program 1 times [2022-02-20 23:39:32,763 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:32,763 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [466571515] [2022-02-20 23:39:32,763 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:32,763 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:32,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:32,871 INFO L290 TraceCheckUtils]: 0: Hoare triple {6082#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6082#true} is VALID [2022-02-20 23:39:32,872 INFO L290 TraceCheckUtils]: 1: Hoare triple {6082#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {6082#true} is VALID [2022-02-20 23:39:32,872 INFO L290 TraceCheckUtils]: 2: Hoare triple {6082#true} assume !(main_~length1~0#1 < 1); {6082#true} is VALID [2022-02-20 23:39:32,872 INFO L290 TraceCheckUtils]: 3: Hoare triple {6082#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {6082#true} is VALID [2022-02-20 23:39:32,873 INFO L290 TraceCheckUtils]: 4: Hoare triple {6082#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {6084#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,888 INFO L290 TraceCheckUtils]: 5: Hoare triple {6084#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {6085#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,889 INFO L290 TraceCheckUtils]: 6: Hoare triple {6085#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6085#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,890 INFO L290 TraceCheckUtils]: 7: Hoare triple {6085#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {6085#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,891 INFO L290 TraceCheckUtils]: 8: Hoare triple {6085#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {6086#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:32,891 INFO L290 TraceCheckUtils]: 9: Hoare triple {6086#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6086#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:32,892 INFO L290 TraceCheckUtils]: 10: Hoare triple {6086#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} main_~i~1#1 := 0; {6086#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:32,893 INFO L290 TraceCheckUtils]: 11: Hoare triple {6086#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {6086#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:32,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {6086#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {6087#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,895 INFO L290 TraceCheckUtils]: 13: Hoare triple {6087#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {6087#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,897 INFO L290 TraceCheckUtils]: 14: Hoare triple {6087#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,897 INFO L290 TraceCheckUtils]: 15: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(0 == cstrncmp_~n#1); {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,898 INFO L290 TraceCheckUtils]: 16: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,898 INFO L290 TraceCheckUtils]: 17: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,899 INFO L290 TraceCheckUtils]: 18: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,899 INFO L290 TraceCheckUtils]: 19: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,900 INFO L290 TraceCheckUtils]: 20: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,900 INFO L290 TraceCheckUtils]: 21: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,901 INFO L290 TraceCheckUtils]: 22: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,901 INFO L290 TraceCheckUtils]: 23: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,902 INFO L290 TraceCheckUtils]: 24: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,902 INFO L290 TraceCheckUtils]: 25: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {6089#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,903 INFO L290 TraceCheckUtils]: 26: Hoare triple {6089#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6089#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,903 INFO L290 TraceCheckUtils]: 27: Hoare triple {6089#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {6089#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:32,904 INFO L290 TraceCheckUtils]: 28: Hoare triple {6089#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {6083#false} is VALID [2022-02-20 23:39:32,904 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:32,904 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:32,904 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [466571515] [2022-02-20 23:39:32,904 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [466571515] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:32,904 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1990150609] [2022-02-20 23:39:32,905 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:32,905 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:32,905 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:32,906 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:39:32,908 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:39:32,968 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:32,969 INFO L263 TraceCheckSpWp]: Trace formula consists of 154 conjuncts, 26 conjunts are in the unsatisfiable core [2022-02-20 23:39:32,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:32,983 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:33,058 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:39:33,058 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:39:33,066 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:39:33,350 INFO L290 TraceCheckUtils]: 0: Hoare triple {6082#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6082#true} is VALID [2022-02-20 23:39:33,350 INFO L290 TraceCheckUtils]: 1: Hoare triple {6082#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {6082#true} is VALID [2022-02-20 23:39:33,350 INFO L290 TraceCheckUtils]: 2: Hoare triple {6082#true} assume !(main_~length1~0#1 < 1); {6082#true} is VALID [2022-02-20 23:39:33,350 INFO L290 TraceCheckUtils]: 3: Hoare triple {6082#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {6082#true} is VALID [2022-02-20 23:39:33,351 INFO L290 TraceCheckUtils]: 4: Hoare triple {6082#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {6105#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,352 INFO L290 TraceCheckUtils]: 5: Hoare triple {6105#(and (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 0 |ULTIMATE.start_main_~i~0#1|) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,352 INFO L290 TraceCheckUtils]: 6: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,353 INFO L290 TraceCheckUtils]: 7: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,353 INFO L290 TraceCheckUtils]: 8: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,354 INFO L290 TraceCheckUtils]: 9: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,354 INFO L290 TraceCheckUtils]: 10: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,355 INFO L290 TraceCheckUtils]: 11: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,355 INFO L290 TraceCheckUtils]: 12: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,356 INFO L290 TraceCheckUtils]: 13: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:33,356 INFO L290 TraceCheckUtils]: 14: Hoare triple {6109#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {6137#(and (< 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0))} is VALID [2022-02-20 23:39:33,357 INFO L290 TraceCheckUtils]: 15: Hoare triple {6137#(and (< 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0))} assume !(0 == cstrncmp_~n#1); {6137#(and (< 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0))} is VALID [2022-02-20 23:39:33,357 INFO L290 TraceCheckUtils]: 16: Hoare triple {6137#(and (< 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6137#(and (< 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0))} is VALID [2022-02-20 23:39:33,357 INFO L290 TraceCheckUtils]: 17: Hoare triple {6137#(and (< 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0))} assume cstrncmp_#t~short5#1; {6137#(and (< 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0))} is VALID [2022-02-20 23:39:33,358 INFO L290 TraceCheckUtils]: 18: Hoare triple {6137#(and (< 1 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,359 INFO L290 TraceCheckUtils]: 19: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,359 INFO L290 TraceCheckUtils]: 20: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,359 INFO L290 TraceCheckUtils]: 21: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,360 INFO L290 TraceCheckUtils]: 22: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,360 INFO L290 TraceCheckUtils]: 23: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,361 INFO L290 TraceCheckUtils]: 24: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,361 INFO L290 TraceCheckUtils]: 25: Hoare triple {6088#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {6171#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,362 INFO L290 TraceCheckUtils]: 26: Hoare triple {6171#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6171#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,362 INFO L290 TraceCheckUtils]: 27: Hoare triple {6171#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {6171#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:33,363 INFO L290 TraceCheckUtils]: 28: Hoare triple {6171#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {6083#false} is VALID [2022-02-20 23:39:33,363 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:33,363 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:33,912 INFO L290 TraceCheckUtils]: 28: Hoare triple {6181#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {6083#false} is VALID [2022-02-20 23:39:33,913 INFO L290 TraceCheckUtils]: 27: Hoare triple {6181#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {6181#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:33,913 INFO L290 TraceCheckUtils]: 26: Hoare triple {6181#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6181#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:33,914 INFO L290 TraceCheckUtils]: 25: Hoare triple {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {6181#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:33,914 INFO L290 TraceCheckUtils]: 24: Hoare triple {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:33,915 INFO L290 TraceCheckUtils]: 23: Hoare triple {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:33,915 INFO L290 TraceCheckUtils]: 22: Hoare triple {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !cstrncmp_#t~short7#1; {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:33,916 INFO L290 TraceCheckUtils]: 21: Hoare triple {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:33,916 INFO L290 TraceCheckUtils]: 20: Hoare triple {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:33,917 INFO L290 TraceCheckUtils]: 19: Hoare triple {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:33,917 INFO L290 TraceCheckUtils]: 18: Hoare triple {6213#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {6191#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:33,918 INFO L290 TraceCheckUtils]: 17: Hoare triple {6213#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} assume cstrncmp_#t~short5#1; {6213#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:33,918 INFO L290 TraceCheckUtils]: 16: Hoare triple {6213#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6213#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:33,919 INFO L290 TraceCheckUtils]: 15: Hoare triple {6213#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} assume !(0 == cstrncmp_~n#1); {6213#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:33,919 INFO L290 TraceCheckUtils]: 14: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {6213#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:33,920 INFO L290 TraceCheckUtils]: 13: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,920 INFO L290 TraceCheckUtils]: 12: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,921 INFO L290 TraceCheckUtils]: 11: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,921 INFO L290 TraceCheckUtils]: 10: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} main_~i~1#1 := 0; {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,921 INFO L290 TraceCheckUtils]: 9: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,922 INFO L290 TraceCheckUtils]: 8: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,922 INFO L290 TraceCheckUtils]: 7: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} havoc main_#t~nondet18#1; {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,923 INFO L290 TraceCheckUtils]: 6: Hoare triple {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,923 INFO L290 TraceCheckUtils]: 5: Hoare triple {6254#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {6226#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:33,924 INFO L290 TraceCheckUtils]: 4: Hoare triple {6082#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {6254#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:39:33,924 INFO L290 TraceCheckUtils]: 3: Hoare triple {6082#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {6082#true} is VALID [2022-02-20 23:39:33,924 INFO L290 TraceCheckUtils]: 2: Hoare triple {6082#true} assume !(main_~length1~0#1 < 1); {6082#true} is VALID [2022-02-20 23:39:33,924 INFO L290 TraceCheckUtils]: 1: Hoare triple {6082#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {6082#true} is VALID [2022-02-20 23:39:33,925 INFO L290 TraceCheckUtils]: 0: Hoare triple {6082#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6082#true} is VALID [2022-02-20 23:39:33,925 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 1 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:33,925 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1990150609] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:33,925 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:33,925 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 16 [2022-02-20 23:39:33,925 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1991520477] [2022-02-20 23:39:33,925 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:33,926 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 4.5625) internal successors, (73), 17 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 29 [2022-02-20 23:39:33,926 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:33,939 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 4.5625) internal successors, (73), 17 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,007 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:34,007 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:39:34,007 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:34,007 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:39:34,008 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=223, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:39:34,008 INFO L87 Difference]: Start difference. First operand 54 states and 59 transitions. Second operand has 17 states, 16 states have (on average 4.5625) internal successors, (73), 17 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,542 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:34,543 INFO L93 Difference]: Finished difference Result 78 states and 84 transitions. [2022-02-20 23:39:34,543 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:39:34,543 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 4.5625) internal successors, (73), 17 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 29 [2022-02-20 23:39:34,543 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:34,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 4.5625) internal successors, (73), 17 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 76 transitions. [2022-02-20 23:39:34,543 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 4.5625) internal successors, (73), 17 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,544 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 76 transitions. [2022-02-20 23:39:34,544 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 76 transitions. [2022-02-20 23:39:34,603 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:39:34,604 INFO L225 Difference]: With dead ends: 78 [2022-02-20 23:39:34,604 INFO L226 Difference]: Without dead ends: 78 [2022-02-20 23:39:34,604 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 47 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 71 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=112, Invalid=394, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:39:34,604 INFO L933 BasicCegarLoop]: 28 mSDtfsCounter, 278 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 120 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 278 SdHoareTripleChecker+Valid, 140 SdHoareTripleChecker+Invalid, 147 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 120 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:34,605 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [278 Valid, 140 Invalid, 147 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 120 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:34,605 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2022-02-20 23:39:34,606 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 60. [2022-02-20 23:39:34,606 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:34,606 INFO L82 GeneralOperation]: Start isEquivalent. First operand 78 states. Second operand has 60 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 59 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,606 INFO L74 IsIncluded]: Start isIncluded. First operand 78 states. Second operand has 60 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 59 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,606 INFO L87 Difference]: Start difference. First operand 78 states. Second operand has 60 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 59 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:34,607 INFO L93 Difference]: Finished difference Result 78 states and 84 transitions. [2022-02-20 23:39:34,607 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 84 transitions. [2022-02-20 23:39:34,607 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:34,607 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:34,607 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 59 states have internal predecessors, (66), 0 states have call successors, (0), 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 78 states. [2022-02-20 23:39:34,607 INFO L87 Difference]: Start difference. First operand has 60 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 59 states have internal predecessors, (66), 0 states have call successors, (0), 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 78 states. [2022-02-20 23:39:34,608 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:34,608 INFO L93 Difference]: Finished difference Result 78 states and 84 transitions. [2022-02-20 23:39:34,608 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 84 transitions. [2022-02-20 23:39:34,608 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:34,608 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:34,608 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:34,608 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:34,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 56 states have (on average 1.1785714285714286) internal successors, (66), 59 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 66 transitions. [2022-02-20 23:39:34,609 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 66 transitions. Word has length 29 [2022-02-20 23:39:34,609 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:34,609 INFO L470 AbstractCegarLoop]: Abstraction has 60 states and 66 transitions. [2022-02-20 23:39:34,609 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 4.5625) internal successors, (73), 17 states have internal predecessors, (73), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:34,609 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 66 transitions. [2022-02-20 23:39:34,609 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:39:34,609 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:34,609 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:34,639 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:39:34,809 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:34,810 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:34,810 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:34,810 INFO L85 PathProgramCache]: Analyzing trace with hash -1303465643, now seen corresponding path program 1 times [2022-02-20 23:39:34,810 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:34,810 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1117672025] [2022-02-20 23:39:34,810 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:34,810 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:34,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:34,972 INFO L290 TraceCheckUtils]: 0: Hoare triple {6575#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6575#true} is VALID [2022-02-20 23:39:34,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {6575#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {6575#true} is VALID [2022-02-20 23:39:34,973 INFO L290 TraceCheckUtils]: 2: Hoare triple {6575#true} assume !(main_~length1~0#1 < 1); {6575#true} is VALID [2022-02-20 23:39:34,973 INFO L290 TraceCheckUtils]: 3: Hoare triple {6575#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {6577#(and (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:34,974 INFO L290 TraceCheckUtils]: 4: Hoare triple {6577#(and (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,976 INFO L290 TraceCheckUtils]: 5: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,977 INFO L290 TraceCheckUtils]: 6: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,977 INFO L290 TraceCheckUtils]: 7: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} havoc main_#t~nondet18#1; {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,978 INFO L290 TraceCheckUtils]: 8: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,978 INFO L290 TraceCheckUtils]: 9: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,978 INFO L290 TraceCheckUtils]: 10: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} main_~i~1#1 := 0; {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,979 INFO L290 TraceCheckUtils]: 11: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,979 INFO L290 TraceCheckUtils]: 12: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:34,980 INFO L290 TraceCheckUtils]: 13: Hoare triple {6578#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {6579#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~nondetString2~0#1.offset|) 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:39:34,980 INFO L290 TraceCheckUtils]: 14: Hoare triple {6579#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~nondetString2~0#1.offset|) 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {6580#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:34,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {6580#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} assume !(0 == cstrncmp_~n#1); {6580#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:34,981 INFO L290 TraceCheckUtils]: 16: Hoare triple {6580#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6580#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:34,981 INFO L290 TraceCheckUtils]: 17: Hoare triple {6580#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} assume cstrncmp_#t~short5#1; {6580#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:34,982 INFO L290 TraceCheckUtils]: 18: Hoare triple {6580#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {6581#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0))} is VALID [2022-02-20 23:39:34,982 INFO L290 TraceCheckUtils]: 19: Hoare triple {6581#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {6582#(and (= |ULTIMATE.start_cstrncmp_#t~mem4#1| 0) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:34,983 INFO L290 TraceCheckUtils]: 20: Hoare triple {6582#(and (= |ULTIMATE.start_cstrncmp_#t~mem4#1| 0) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {6583#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:39:34,983 INFO L290 TraceCheckUtils]: 21: Hoare triple {6583#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {6584#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:34,983 INFO L290 TraceCheckUtils]: 22: Hoare triple {6584#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {6584#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:34,984 INFO L290 TraceCheckUtils]: 23: Hoare triple {6584#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {6585#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:34,984 INFO L290 TraceCheckUtils]: 24: Hoare triple {6585#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {6586#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:34,984 INFO L290 TraceCheckUtils]: 25: Hoare triple {6586#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {6576#false} is VALID [2022-02-20 23:39:34,984 INFO L290 TraceCheckUtils]: 26: Hoare triple {6576#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6576#false} is VALID [2022-02-20 23:39:34,984 INFO L290 TraceCheckUtils]: 27: Hoare triple {6576#false} assume cstrncmp_#t~short5#1; {6576#false} is VALID [2022-02-20 23:39:34,985 INFO L290 TraceCheckUtils]: 28: Hoare triple {6576#false} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {6576#false} is VALID [2022-02-20 23:39:34,985 INFO L290 TraceCheckUtils]: 29: Hoare triple {6576#false} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {6576#false} is VALID [2022-02-20 23:39:34,985 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:34,985 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:34,986 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1117672025] [2022-02-20 23:39:34,986 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1117672025] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:34,986 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:34,986 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-02-20 23:39:34,986 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1567264031] [2022-02-20 23:39:34,986 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:34,987 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.5) internal successors, (30), 12 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 30 [2022-02-20 23:39:34,987 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:34,987 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.5) internal successors, (30), 12 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:39:35,005 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:39:35,005 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-02-20 23:39:35,006 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:35,007 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-02-20 23:39:35,007 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=108, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:39:35,007 INFO L87 Difference]: Start difference. First operand 60 states and 66 transitions. Second operand has 12 states, 12 states have (on average 2.5) internal successors, (30), 12 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:39:35,449 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:35,449 INFO L93 Difference]: Finished difference Result 74 states and 79 transitions. [2022-02-20 23:39:35,449 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:39:35,449 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.5) internal successors, (30), 12 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 30 [2022-02-20 23:39:35,450 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:35,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.5) internal successors, (30), 12 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:39:35,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 62 transitions. [2022-02-20 23:39:35,450 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.5) internal successors, (30), 12 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:39:35,450 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 62 transitions. [2022-02-20 23:39:35,450 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 62 transitions. [2022-02-20 23:39:35,493 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:35,493 INFO L225 Difference]: With dead ends: 74 [2022-02-20 23:39:35,493 INFO L226 Difference]: Without dead ends: 52 [2022-02-20 23:39:35,494 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=105, Invalid=275, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:39:35,494 INFO L933 BasicCegarLoop]: 28 mSDtfsCounter, 41 mSDsluCounter, 245 mSDsCounter, 0 mSdLazyCounter, 154 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 273 SdHoareTripleChecker+Invalid, 159 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 154 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:35,494 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 273 Invalid, 159 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 154 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:35,495 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-02-20 23:39:35,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 52. [2022-02-20 23:39:35,495 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:35,495 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 52 states, 48 states have (on average 1.1666666666666667) internal successors, (56), 51 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:39:35,495 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 52 states, 48 states have (on average 1.1666666666666667) internal successors, (56), 51 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:39:35,495 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 52 states, 48 states have (on average 1.1666666666666667) internal successors, (56), 51 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:39:35,496 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:35,496 INFO L93 Difference]: Finished difference Result 52 states and 56 transitions. [2022-02-20 23:39:35,496 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 56 transitions. [2022-02-20 23:39:35,496 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:35,496 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:35,496 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 48 states have (on average 1.1666666666666667) internal successors, (56), 51 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 52 states. [2022-02-20 23:39:35,496 INFO L87 Difference]: Start difference. First operand has 52 states, 48 states have (on average 1.1666666666666667) internal successors, (56), 51 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 52 states. [2022-02-20 23:39:35,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:35,497 INFO L93 Difference]: Finished difference Result 52 states and 56 transitions. [2022-02-20 23:39:35,497 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 56 transitions. [2022-02-20 23:39:35,497 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:35,497 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:35,497 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:35,497 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:35,497 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 48 states have (on average 1.1666666666666667) internal successors, (56), 51 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:39:35,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 56 transitions. [2022-02-20 23:39:35,497 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 56 transitions. Word has length 30 [2022-02-20 23:39:35,497 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:35,498 INFO L470 AbstractCegarLoop]: Abstraction has 52 states and 56 transitions. [2022-02-20 23:39:35,498 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.5) internal successors, (30), 12 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:39:35,498 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 56 transitions. [2022-02-20 23:39:35,498 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:39:35,498 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:35,498 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:35,498 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20 [2022-02-20 23:39:35,498 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:35,498 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:35,498 INFO L85 PathProgramCache]: Analyzing trace with hash 619762391, now seen corresponding path program 1 times [2022-02-20 23:39:35,498 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:35,499 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1935689201] [2022-02-20 23:39:35,499 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:35,499 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:35,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:35,714 INFO L290 TraceCheckUtils]: 0: Hoare triple {6835#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6835#true} is VALID [2022-02-20 23:39:35,714 INFO L290 TraceCheckUtils]: 1: Hoare triple {6835#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {6835#true} is VALID [2022-02-20 23:39:35,715 INFO L290 TraceCheckUtils]: 2: Hoare triple {6835#true} assume !(main_~length1~0#1 < 1); {6835#true} is VALID [2022-02-20 23:39:35,715 INFO L290 TraceCheckUtils]: 3: Hoare triple {6835#true} assume !(main_~length2~0#1 < 1); {6837#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:35,716 INFO L290 TraceCheckUtils]: 4: Hoare triple {6837#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,716 INFO L290 TraceCheckUtils]: 5: Hoare triple {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,716 INFO L290 TraceCheckUtils]: 6: Hoare triple {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,717 INFO L290 TraceCheckUtils]: 7: Hoare triple {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet18#1; {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,717 INFO L290 TraceCheckUtils]: 8: Hoare triple {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,718 INFO L290 TraceCheckUtils]: 9: Hoare triple {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,718 INFO L290 TraceCheckUtils]: 10: Hoare triple {6838#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} main_~i~1#1 := 0; {6839#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,719 INFO L290 TraceCheckUtils]: 11: Hoare triple {6839#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {6840#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,719 INFO L290 TraceCheckUtils]: 12: Hoare triple {6840#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {6840#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:35,720 INFO L290 TraceCheckUtils]: 13: Hoare triple {6840#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {6841#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~nondetString2~0#1.offset|) 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:39:35,722 INFO L290 TraceCheckUtils]: 14: Hoare triple {6841#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~nondetString2~0#1.offset|) 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {6842#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:35,723 INFO L290 TraceCheckUtils]: 15: Hoare triple {6842#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} assume !(0 == cstrncmp_~n#1); {6842#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:35,723 INFO L290 TraceCheckUtils]: 16: Hoare triple {6842#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6842#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:35,724 INFO L290 TraceCheckUtils]: 17: Hoare triple {6842#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} assume cstrncmp_#t~short5#1; {6842#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:35,724 INFO L290 TraceCheckUtils]: 18: Hoare triple {6842#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {6843#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0))} is VALID [2022-02-20 23:39:35,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {6843#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {6844#(and (= |ULTIMATE.start_cstrncmp_#t~mem4#1| 0) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:35,725 INFO L290 TraceCheckUtils]: 20: Hoare triple {6844#(and (= |ULTIMATE.start_cstrncmp_#t~mem4#1| 0) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {6845#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:39:35,725 INFO L290 TraceCheckUtils]: 21: Hoare triple {6845#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {6846#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:35,726 INFO L290 TraceCheckUtils]: 22: Hoare triple {6846#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {6846#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:35,726 INFO L290 TraceCheckUtils]: 23: Hoare triple {6846#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {6847#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:35,727 INFO L290 TraceCheckUtils]: 24: Hoare triple {6847#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {6848#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:35,728 INFO L290 TraceCheckUtils]: 25: Hoare triple {6848#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {6836#false} is VALID [2022-02-20 23:39:35,728 INFO L290 TraceCheckUtils]: 26: Hoare triple {6836#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {6836#false} is VALID [2022-02-20 23:39:35,728 INFO L290 TraceCheckUtils]: 27: Hoare triple {6836#false} assume cstrncmp_#t~short5#1; {6836#false} is VALID [2022-02-20 23:39:35,728 INFO L290 TraceCheckUtils]: 28: Hoare triple {6836#false} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {6836#false} is VALID [2022-02-20 23:39:35,728 INFO L290 TraceCheckUtils]: 29: Hoare triple {6836#false} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {6836#false} is VALID [2022-02-20 23:39:35,728 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:35,729 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:35,729 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1935689201] [2022-02-20 23:39:35,730 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1935689201] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:35,730 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:35,730 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-02-20 23:39:35,730 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [274912957] [2022-02-20 23:39:35,731 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:35,734 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 14 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 30 [2022-02-20 23:39:35,734 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:35,734 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 14 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:39:35,756 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:39:35,756 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-02-20 23:39:35,756 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:35,757 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-02-20 23:39:35,757 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=150, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:39:35,757 INFO L87 Difference]: Start difference. First operand 52 states and 56 transitions. Second operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 14 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:39:36,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:36,202 INFO L93 Difference]: Finished difference Result 70 states and 74 transitions. [2022-02-20 23:39:36,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-02-20 23:39:36,202 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 14 states have internal predecessors, (30), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 30 [2022-02-20 23:39:36,202 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:36,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 14 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:39:36,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 58 transitions. [2022-02-20 23:39:36,218 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 14 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:39:36,219 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 58 transitions. [2022-02-20 23:39:36,219 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 58 transitions. [2022-02-20 23:39:36,260 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:36,260 INFO L225 Difference]: With dead ends: 70 [2022-02-20 23:39:36,260 INFO L226 Difference]: Without dead ends: 56 [2022-02-20 23:39:36,261 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=152, Invalid=400, Unknown=0, NotChecked=0, Total=552 [2022-02-20 23:39:36,261 INFO L933 BasicCegarLoop]: 24 mSDtfsCounter, 100 mSDsluCounter, 202 mSDsCounter, 0 mSdLazyCounter, 159 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 100 SdHoareTripleChecker+Valid, 226 SdHoareTripleChecker+Invalid, 168 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 159 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:36,261 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [100 Valid, 226 Invalid, 168 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 159 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:36,262 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-02-20 23:39:36,262 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 53. [2022-02-20 23:39:36,263 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:36,263 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 53 states, 49 states have (on average 1.163265306122449) internal successors, (57), 52 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:39:36,263 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 53 states, 49 states have (on average 1.163265306122449) internal successors, (57), 52 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:39:36,263 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 53 states, 49 states have (on average 1.163265306122449) internal successors, (57), 52 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:39:36,264 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:36,264 INFO L93 Difference]: Finished difference Result 56 states and 60 transitions. [2022-02-20 23:39:36,264 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 60 transitions. [2022-02-20 23:39:36,264 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:36,264 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:36,264 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 49 states have (on average 1.163265306122449) internal successors, (57), 52 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 56 states. [2022-02-20 23:39:36,264 INFO L87 Difference]: Start difference. First operand has 53 states, 49 states have (on average 1.163265306122449) internal successors, (57), 52 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 56 states. [2022-02-20 23:39:36,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:36,265 INFO L93 Difference]: Finished difference Result 56 states and 60 transitions. [2022-02-20 23:39:36,265 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 60 transitions. [2022-02-20 23:39:36,265 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:36,265 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:36,265 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:36,265 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:36,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 49 states have (on average 1.163265306122449) internal successors, (57), 52 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:39:36,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 57 transitions. [2022-02-20 23:39:36,266 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 57 transitions. Word has length 30 [2022-02-20 23:39:36,266 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:36,266 INFO L470 AbstractCegarLoop]: Abstraction has 53 states and 57 transitions. [2022-02-20 23:39:36,266 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.142857142857143) internal successors, (30), 14 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:39:36,267 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 57 transitions. [2022-02-20 23:39:36,267 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-02-20 23:39:36,267 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:36,267 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:36,267 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21 [2022-02-20 23:39:36,267 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:36,267 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:36,268 INFO L85 PathProgramCache]: Analyzing trace with hash 1945235956, now seen corresponding path program 1 times [2022-02-20 23:39:36,268 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:36,268 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1418064683] [2022-02-20 23:39:36,268 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:36,268 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:36,289 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:36,374 INFO L290 TraceCheckUtils]: 0: Hoare triple {7106#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7106#true} is VALID [2022-02-20 23:39:36,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {7106#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {7106#true} is VALID [2022-02-20 23:39:36,374 INFO L290 TraceCheckUtils]: 2: Hoare triple {7106#true} assume !(main_~length1~0#1 < 1); {7106#true} is VALID [2022-02-20 23:39:36,374 INFO L290 TraceCheckUtils]: 3: Hoare triple {7106#true} assume !(main_~length2~0#1 < 1); {7106#true} is VALID [2022-02-20 23:39:36,375 INFO L290 TraceCheckUtils]: 4: Hoare triple {7106#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,375 INFO L290 TraceCheckUtils]: 5: Hoare triple {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,376 INFO L290 TraceCheckUtils]: 6: Hoare triple {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,376 INFO L290 TraceCheckUtils]: 7: Hoare triple {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,377 INFO L290 TraceCheckUtils]: 8: Hoare triple {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,377 INFO L290 TraceCheckUtils]: 9: Hoare triple {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,378 INFO L290 TraceCheckUtils]: 10: Hoare triple {7108#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_~i~1#1 := 0; {7109#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,378 INFO L290 TraceCheckUtils]: 11: Hoare triple {7109#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {7110#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,379 INFO L290 TraceCheckUtils]: 12: Hoare triple {7110#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {7110#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,379 INFO L290 TraceCheckUtils]: 13: Hoare triple {7110#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {7110#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,380 INFO L290 TraceCheckUtils]: 14: Hoare triple {7110#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {7111#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,380 INFO L290 TraceCheckUtils]: 15: Hoare triple {7111#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7111#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,381 INFO L290 TraceCheckUtils]: 16: Hoare triple {7111#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {7111#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,381 INFO L290 TraceCheckUtils]: 17: Hoare triple {7111#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {7112#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:36,382 INFO L290 TraceCheckUtils]: 18: Hoare triple {7112#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,382 INFO L290 TraceCheckUtils]: 19: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} assume !(0 == cstrncmp_~n#1); {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,383 INFO L290 TraceCheckUtils]: 20: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,383 INFO L290 TraceCheckUtils]: 21: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} assume cstrncmp_#t~short5#1; {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,384 INFO L290 TraceCheckUtils]: 22: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,384 INFO L290 TraceCheckUtils]: 24: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,385 INFO L290 TraceCheckUtils]: 25: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,385 INFO L290 TraceCheckUtils]: 26: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} assume !cstrncmp_#t~short7#1; {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,386 INFO L290 TraceCheckUtils]: 27: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,386 INFO L290 TraceCheckUtils]: 28: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} is VALID [2022-02-20 23:39:36,387 INFO L290 TraceCheckUtils]: 29: Hoare triple {7113#(and (<= 2 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:36,387 INFO L290 TraceCheckUtils]: 30: Hoare triple {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:36,388 INFO L290 TraceCheckUtils]: 31: Hoare triple {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:36,388 INFO L290 TraceCheckUtils]: 32: Hoare triple {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:36,389 INFO L290 TraceCheckUtils]: 33: Hoare triple {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {7107#false} is VALID [2022-02-20 23:39:36,389 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:36,389 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:36,389 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1418064683] [2022-02-20 23:39:36,389 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1418064683] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:36,389 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1822677887] [2022-02-20 23:39:36,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:36,389 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:36,390 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:36,391 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:39:36,392 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:39:36,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:36,458 INFO L263 TraceCheckSpWp]: Trace formula consists of 172 conjuncts, 17 conjunts are in the unsatisfiable core [2022-02-20 23:39:36,468 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:36,469 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:36,730 INFO L290 TraceCheckUtils]: 0: Hoare triple {7106#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7106#true} is VALID [2022-02-20 23:39:36,730 INFO L290 TraceCheckUtils]: 1: Hoare triple {7106#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {7106#true} is VALID [2022-02-20 23:39:36,730 INFO L290 TraceCheckUtils]: 2: Hoare triple {7106#true} assume !(main_~length1~0#1 < 1); {7106#true} is VALID [2022-02-20 23:39:36,730 INFO L290 TraceCheckUtils]: 3: Hoare triple {7106#true} assume !(main_~length2~0#1 < 1); {7106#true} is VALID [2022-02-20 23:39:36,730 INFO L290 TraceCheckUtils]: 4: Hoare triple {7106#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {7106#true} is VALID [2022-02-20 23:39:36,731 INFO L290 TraceCheckUtils]: 5: Hoare triple {7106#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {7106#true} is VALID [2022-02-20 23:39:36,731 INFO L290 TraceCheckUtils]: 6: Hoare triple {7106#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7106#true} is VALID [2022-02-20 23:39:36,731 INFO L290 TraceCheckUtils]: 7: Hoare triple {7106#true} havoc main_#t~nondet18#1; {7106#true} is VALID [2022-02-20 23:39:36,731 INFO L290 TraceCheckUtils]: 8: Hoare triple {7106#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {7106#true} is VALID [2022-02-20 23:39:36,731 INFO L290 TraceCheckUtils]: 9: Hoare triple {7106#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7106#true} is VALID [2022-02-20 23:39:36,731 INFO L290 TraceCheckUtils]: 10: Hoare triple {7106#true} main_~i~1#1 := 0; {7148#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:36,732 INFO L290 TraceCheckUtils]: 11: Hoare triple {7148#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:36,732 INFO L290 TraceCheckUtils]: 12: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:36,735 INFO L290 TraceCheckUtils]: 13: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet20#1; {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:36,736 INFO L290 TraceCheckUtils]: 14: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:36,739 INFO L290 TraceCheckUtils]: 15: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:36,740 INFO L290 TraceCheckUtils]: 16: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:36,740 INFO L290 TraceCheckUtils]: 17: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {7171#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} is VALID [2022-02-20 23:39:36,741 INFO L290 TraceCheckUtils]: 18: Hoare triple {7171#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:36,741 INFO L290 TraceCheckUtils]: 19: Hoare triple {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !(0 == cstrncmp_~n#1); {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:36,741 INFO L290 TraceCheckUtils]: 20: Hoare triple {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:36,742 INFO L290 TraceCheckUtils]: 21: Hoare triple {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume cstrncmp_#t~short5#1; {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:36,742 INFO L290 TraceCheckUtils]: 22: Hoare triple {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:36,742 INFO L290 TraceCheckUtils]: 23: Hoare triple {7175#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:36,743 INFO L290 TraceCheckUtils]: 24: Hoare triple {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:36,743 INFO L290 TraceCheckUtils]: 25: Hoare triple {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:36,744 INFO L290 TraceCheckUtils]: 26: Hoare triple {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1; {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:36,744 INFO L290 TraceCheckUtils]: 27: Hoare triple {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:36,745 INFO L290 TraceCheckUtils]: 28: Hoare triple {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:36,745 INFO L290 TraceCheckUtils]: 29: Hoare triple {7191#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:36,746 INFO L290 TraceCheckUtils]: 30: Hoare triple {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:36,746 INFO L290 TraceCheckUtils]: 31: Hoare triple {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:36,746 INFO L290 TraceCheckUtils]: 32: Hoare triple {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:36,747 INFO L290 TraceCheckUtils]: 33: Hoare triple {7114#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {7107#false} is VALID [2022-02-20 23:39:36,747 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:36,747 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:36,970 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:39:37,016 INFO L290 TraceCheckUtils]: 33: Hoare triple {7222#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {7107#false} is VALID [2022-02-20 23:39:37,016 INFO L290 TraceCheckUtils]: 32: Hoare triple {7222#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7222#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:37,017 INFO L290 TraceCheckUtils]: 31: Hoare triple {7222#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume cstrncmp_#t~short5#1; {7222#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:37,017 INFO L290 TraceCheckUtils]: 30: Hoare triple {7222#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7222#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:37,018 INFO L290 TraceCheckUtils]: 29: Hoare triple {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7222#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:37,018 INFO L290 TraceCheckUtils]: 28: Hoare triple {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:37,019 INFO L290 TraceCheckUtils]: 27: Hoare triple {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:37,019 INFO L290 TraceCheckUtils]: 26: Hoare triple {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !cstrncmp_#t~short7#1; {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:37,020 INFO L290 TraceCheckUtils]: 25: Hoare triple {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:37,020 INFO L290 TraceCheckUtils]: 24: Hoare triple {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:37,020 INFO L290 TraceCheckUtils]: 23: Hoare triple {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7235#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:37,021 INFO L290 TraceCheckUtils]: 22: Hoare triple {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:37,021 INFO L290 TraceCheckUtils]: 21: Hoare triple {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:37,022 INFO L290 TraceCheckUtils]: 20: Hoare triple {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:37,022 INFO L290 TraceCheckUtils]: 19: Hoare triple {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(0 == cstrncmp_~n#1); {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:37,022 INFO L290 TraceCheckUtils]: 18: Hoare triple {7270#(or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {7254#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:37,023 INFO L290 TraceCheckUtils]: 17: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {7270#(or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:37,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:37,024 INFO L290 TraceCheckUtils]: 15: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:37,024 INFO L290 TraceCheckUtils]: 14: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:37,024 INFO L290 TraceCheckUtils]: 13: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet20#1; {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:37,024 INFO L290 TraceCheckUtils]: 12: Hoare triple {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:37,025 INFO L290 TraceCheckUtils]: 11: Hoare triple {7148#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {7152#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:37,025 INFO L290 TraceCheckUtils]: 10: Hoare triple {7106#true} main_~i~1#1 := 0; {7148#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:37,025 INFO L290 TraceCheckUtils]: 9: Hoare triple {7106#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7106#true} is VALID [2022-02-20 23:39:37,025 INFO L290 TraceCheckUtils]: 8: Hoare triple {7106#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {7106#true} is VALID [2022-02-20 23:39:37,025 INFO L290 TraceCheckUtils]: 7: Hoare triple {7106#true} havoc main_#t~nondet18#1; {7106#true} is VALID [2022-02-20 23:39:37,026 INFO L290 TraceCheckUtils]: 6: Hoare triple {7106#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7106#true} is VALID [2022-02-20 23:39:37,026 INFO L290 TraceCheckUtils]: 5: Hoare triple {7106#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {7106#true} is VALID [2022-02-20 23:39:37,026 INFO L290 TraceCheckUtils]: 4: Hoare triple {7106#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {7106#true} is VALID [2022-02-20 23:39:37,026 INFO L290 TraceCheckUtils]: 3: Hoare triple {7106#true} assume !(main_~length2~0#1 < 1); {7106#true} is VALID [2022-02-20 23:39:37,026 INFO L290 TraceCheckUtils]: 2: Hoare triple {7106#true} assume !(main_~length1~0#1 < 1); {7106#true} is VALID [2022-02-20 23:39:37,026 INFO L290 TraceCheckUtils]: 1: Hoare triple {7106#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {7106#true} is VALID [2022-02-20 23:39:37,026 INFO L290 TraceCheckUtils]: 0: Hoare triple {7106#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7106#true} is VALID [2022-02-20 23:39:37,026 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:37,027 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1822677887] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:37,027 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:37,027 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 17 [2022-02-20 23:39:37,027 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [882910886] [2022-02-20 23:39:37,027 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:37,027 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 4.529411764705882) internal successors, (77), 18 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 34 [2022-02-20 23:39:37,028 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:37,028 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 17 states have (on average 4.529411764705882) internal successors, (77), 18 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:39:37,076 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:37,076 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 23:39:37,076 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:37,077 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 23:39:37,077 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=64, Invalid=242, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:39:37,077 INFO L87 Difference]: Start difference. First operand 53 states and 57 transitions. Second operand has 18 states, 17 states have (on average 4.529411764705882) internal successors, (77), 18 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:39:37,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:37,587 INFO L93 Difference]: Finished difference Result 68 states and 71 transitions. [2022-02-20 23:39:37,587 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:39:37,587 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 17 states have (on average 4.529411764705882) internal successors, (77), 18 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 34 [2022-02-20 23:39:37,587 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:37,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 4.529411764705882) internal successors, (77), 18 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:39:37,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 72 transitions. [2022-02-20 23:39:37,588 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 4.529411764705882) internal successors, (77), 18 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:39:37,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 72 transitions. [2022-02-20 23:39:37,589 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 72 transitions. [2022-02-20 23:39:37,643 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:37,644 INFO L225 Difference]: With dead ends: 68 [2022-02-20 23:39:37,644 INFO L226 Difference]: Without dead ends: 61 [2022-02-20 23:39:37,644 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 56 SyntacticMatches, 2 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 119 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=115, Invalid=347, Unknown=0, NotChecked=0, Total=462 [2022-02-20 23:39:37,644 INFO L933 BasicCegarLoop]: 27 mSDtfsCounter, 279 mSDsluCounter, 167 mSDsCounter, 0 mSdLazyCounter, 174 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 279 SdHoareTripleChecker+Valid, 194 SdHoareTripleChecker+Invalid, 203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 174 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:37,645 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [279 Valid, 194 Invalid, 203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 174 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:37,645 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 61 states. [2022-02-20 23:39:37,645 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 61 to 52. [2022-02-20 23:39:37,645 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:37,646 INFO L82 GeneralOperation]: Start isEquivalent. First operand 61 states. Second operand has 52 states, 48 states have (on average 1.125) internal successors, (54), 51 states have internal predecessors, (54), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:37,646 INFO L74 IsIncluded]: Start isIncluded. First operand 61 states. Second operand has 52 states, 48 states have (on average 1.125) internal successors, (54), 51 states have internal predecessors, (54), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:37,646 INFO L87 Difference]: Start difference. First operand 61 states. Second operand has 52 states, 48 states have (on average 1.125) internal successors, (54), 51 states have internal predecessors, (54), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:37,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:37,646 INFO L93 Difference]: Finished difference Result 61 states and 63 transitions. [2022-02-20 23:39:37,646 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 63 transitions. [2022-02-20 23:39:37,646 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:37,647 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:37,647 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 48 states have (on average 1.125) internal successors, (54), 51 states have internal predecessors, (54), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 61 states. [2022-02-20 23:39:37,651 INFO L87 Difference]: Start difference. First operand has 52 states, 48 states have (on average 1.125) internal successors, (54), 51 states have internal predecessors, (54), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 61 states. [2022-02-20 23:39:37,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:37,651 INFO L93 Difference]: Finished difference Result 61 states and 63 transitions. [2022-02-20 23:39:37,652 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 63 transitions. [2022-02-20 23:39:37,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:37,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:37,652 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:37,652 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:37,652 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 48 states have (on average 1.125) internal successors, (54), 51 states have internal predecessors, (54), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:37,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 54 transitions. [2022-02-20 23:39:37,652 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 54 transitions. Word has length 34 [2022-02-20 23:39:37,652 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:37,652 INFO L470 AbstractCegarLoop]: Abstraction has 52 states and 54 transitions. [2022-02-20 23:39:37,652 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 17 states have (on average 4.529411764705882) internal successors, (77), 18 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:39:37,652 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 54 transitions. [2022-02-20 23:39:37,653 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 23:39:37,653 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:37,653 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:37,670 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:39:37,863 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:37,863 INFO L402 AbstractCegarLoop]: === Iteration 24 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:37,863 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:37,864 INFO L85 PathProgramCache]: Analyzing trace with hash -871868475, now seen corresponding path program 1 times [2022-02-20 23:39:37,864 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:37,864 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1644605404] [2022-02-20 23:39:37,864 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:37,864 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:37,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:38,036 INFO L290 TraceCheckUtils]: 0: Hoare triple {7574#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7574#true} is VALID [2022-02-20 23:39:38,037 INFO L290 TraceCheckUtils]: 1: Hoare triple {7574#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {7574#true} is VALID [2022-02-20 23:39:38,037 INFO L290 TraceCheckUtils]: 2: Hoare triple {7574#true} assume !(main_~length1~0#1 < 1); {7574#true} is VALID [2022-02-20 23:39:38,037 INFO L290 TraceCheckUtils]: 3: Hoare triple {7574#true} assume !(main_~length2~0#1 < 1); {7574#true} is VALID [2022-02-20 23:39:38,038 INFO L290 TraceCheckUtils]: 4: Hoare triple {7574#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {7576#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (or (= |ULTIMATE.start_main_~i~0#1| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)))} is VALID [2022-02-20 23:39:38,038 INFO L290 TraceCheckUtils]: 5: Hoare triple {7576#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (or (= |ULTIMATE.start_main_~i~0#1| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {7577#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:38,039 INFO L290 TraceCheckUtils]: 6: Hoare triple {7577#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7577#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:38,040 INFO L290 TraceCheckUtils]: 7: Hoare triple {7577#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {7577#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:38,040 INFO L290 TraceCheckUtils]: 8: Hoare triple {7577#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {7578#(and (or (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:38,041 INFO L290 TraceCheckUtils]: 9: Hoare triple {7578#(and (or (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:39:38,041 INFO L290 TraceCheckUtils]: 10: Hoare triple {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} main_~i~1#1 := 0; {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:39:38,042 INFO L290 TraceCheckUtils]: 11: Hoare triple {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:39:38,042 INFO L290 TraceCheckUtils]: 12: Hoare triple {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:39:38,043 INFO L290 TraceCheckUtils]: 13: Hoare triple {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} havoc main_#t~nondet20#1; {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:39:38,043 INFO L290 TraceCheckUtils]: 14: Hoare triple {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:39:38,044 INFO L290 TraceCheckUtils]: 15: Hoare triple {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} is VALID [2022-02-20 23:39:38,044 INFO L290 TraceCheckUtils]: 16: Hoare triple {7579#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {7580#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:38,045 INFO L290 TraceCheckUtils]: 17: Hoare triple {7580#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {7580#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:38,045 INFO L290 TraceCheckUtils]: 18: Hoare triple {7580#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,046 INFO L290 TraceCheckUtils]: 19: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} assume !(0 == cstrncmp_~n#1); {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,046 INFO L290 TraceCheckUtils]: 20: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,047 INFO L290 TraceCheckUtils]: 21: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} assume cstrncmp_#t~short5#1; {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,047 INFO L290 TraceCheckUtils]: 22: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,047 INFO L290 TraceCheckUtils]: 23: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,048 INFO L290 TraceCheckUtils]: 24: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,048 INFO L290 TraceCheckUtils]: 25: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,049 INFO L290 TraceCheckUtils]: 26: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} assume !cstrncmp_#t~short7#1; {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,049 INFO L290 TraceCheckUtils]: 27: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,049 INFO L290 TraceCheckUtils]: 28: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} is VALID [2022-02-20 23:39:38,050 INFO L290 TraceCheckUtils]: 29: Hoare triple {7581#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 1) 0))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:38,050 INFO L290 TraceCheckUtils]: 30: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:38,050 INFO L290 TraceCheckUtils]: 31: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume cstrncmp_#t~short5#1; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:38,051 INFO L290 TraceCheckUtils]: 32: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:38,051 INFO L290 TraceCheckUtils]: 33: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:38,051 INFO L290 TraceCheckUtils]: 34: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:38,052 INFO L290 TraceCheckUtils]: 35: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:38,052 INFO L290 TraceCheckUtils]: 36: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:38,052 INFO L290 TraceCheckUtils]: 37: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7583#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:38,052 INFO L290 TraceCheckUtils]: 38: Hoare triple {7583#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7584#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:38,053 INFO L290 TraceCheckUtils]: 39: Hoare triple {7584#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7575#false} is VALID [2022-02-20 23:39:38,053 INFO L290 TraceCheckUtils]: 40: Hoare triple {7575#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7575#false} is VALID [2022-02-20 23:39:38,053 INFO L290 TraceCheckUtils]: 41: Hoare triple {7575#false} assume cstrncmp_#t~short5#1; {7575#false} is VALID [2022-02-20 23:39:38,053 INFO L290 TraceCheckUtils]: 42: Hoare triple {7575#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {7575#false} is VALID [2022-02-20 23:39:38,053 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:38,054 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:38,054 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1644605404] [2022-02-20 23:39:38,054 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1644605404] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:38,054 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [74557670] [2022-02-20 23:39:38,054 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:38,054 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:38,054 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:38,055 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:39:38,056 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:39:38,127 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:38,128 INFO L263 TraceCheckSpWp]: Trace formula consists of 204 conjuncts, 33 conjunts are in the unsatisfiable core [2022-02-20 23:39:38,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:38,139 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:38,265 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:39:39,770 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:39:39,778 INFO L290 TraceCheckUtils]: 0: Hoare triple {7574#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 1: Hoare triple {7574#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 2: Hoare triple {7574#true} assume !(main_~length1~0#1 < 1); {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 3: Hoare triple {7574#true} assume !(main_~length2~0#1 < 1); {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 4: Hoare triple {7574#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 5: Hoare triple {7574#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 6: Hoare triple {7574#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 7: Hoare triple {7574#true} havoc main_#t~nondet18#1; {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 8: Hoare triple {7574#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {7574#true} is VALID [2022-02-20 23:39:39,779 INFO L290 TraceCheckUtils]: 9: Hoare triple {7574#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7574#true} is VALID [2022-02-20 23:39:39,780 INFO L290 TraceCheckUtils]: 10: Hoare triple {7574#true} main_~i~1#1 := 0; {7618#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:39,780 INFO L290 TraceCheckUtils]: 11: Hoare triple {7618#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {7622#(and (= |ULTIMATE.start_main_~i~1#1| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,781 INFO L290 TraceCheckUtils]: 12: Hoare triple {7622#(and (= |ULTIMATE.start_main_~i~1#1| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {7622#(and (= |ULTIMATE.start_main_~i~1#1| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,781 INFO L290 TraceCheckUtils]: 13: Hoare triple {7622#(and (= |ULTIMATE.start_main_~i~1#1| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet20#1; {7622#(and (= |ULTIMATE.start_main_~i~1#1| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,781 INFO L290 TraceCheckUtils]: 14: Hoare triple {7622#(and (= |ULTIMATE.start_main_~i~1#1| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {7632#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (< 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,782 INFO L290 TraceCheckUtils]: 15: Hoare triple {7632#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (< 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7636#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} is VALID [2022-02-20 23:39:39,782 INFO L290 TraceCheckUtils]: 16: Hoare triple {7636#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {7636#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} is VALID [2022-02-20 23:39:39,783 INFO L290 TraceCheckUtils]: 17: Hoare triple {7636#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {7643#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,783 INFO L290 TraceCheckUtils]: 18: Hoare triple {7643#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,784 INFO L290 TraceCheckUtils]: 19: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume !(0 == cstrncmp_~n#1); {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,784 INFO L290 TraceCheckUtils]: 20: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,784 INFO L290 TraceCheckUtils]: 21: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume cstrncmp_#t~short5#1; {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,785 INFO L290 TraceCheckUtils]: 22: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,785 INFO L290 TraceCheckUtils]: 23: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,785 INFO L290 TraceCheckUtils]: 24: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,786 INFO L290 TraceCheckUtils]: 25: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,786 INFO L290 TraceCheckUtils]: 26: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume !cstrncmp_#t~short7#1; {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,786 INFO L290 TraceCheckUtils]: 27: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,786 INFO L290 TraceCheckUtils]: 28: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,787 INFO L290 TraceCheckUtils]: 29: Hoare triple {7647#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7681#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,789 INFO L290 TraceCheckUtils]: 30: Hoare triple {7681#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7681#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,790 INFO L290 TraceCheckUtils]: 31: Hoare triple {7681#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume cstrncmp_#t~short5#1; {7681#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,791 INFO L290 TraceCheckUtils]: 32: Hoare triple {7681#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7691#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2))) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:39,794 INFO L290 TraceCheckUtils]: 33: Hoare triple {7691#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2))) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7695#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2) (= |ULTIMATE.start_cstrncmp_#t~mem4#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|)))))} is VALID [2022-02-20 23:39:39,795 INFO L290 TraceCheckUtils]: 34: Hoare triple {7695#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 2) (= |ULTIMATE.start_cstrncmp_#t~mem4#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|)))))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7699#(exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (or (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) |ULTIMATE.start_cstrncmp_#t~short5#1|) (and (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))))) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} is VALID [2022-02-20 23:39:39,795 INFO L290 TraceCheckUtils]: 35: Hoare triple {7699#(exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (or (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) |ULTIMATE.start_cstrncmp_#t~short5#1|) (and (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))))) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:39,795 INFO L290 TraceCheckUtils]: 36: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:39,796 INFO L290 TraceCheckUtils]: 37: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7583#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:39,796 INFO L290 TraceCheckUtils]: 38: Hoare triple {7583#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7584#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:39,796 INFO L290 TraceCheckUtils]: 39: Hoare triple {7584#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7575#false} is VALID [2022-02-20 23:39:39,797 INFO L290 TraceCheckUtils]: 40: Hoare triple {7575#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7575#false} is VALID [2022-02-20 23:39:39,797 INFO L290 TraceCheckUtils]: 41: Hoare triple {7575#false} assume cstrncmp_#t~short5#1; {7575#false} is VALID [2022-02-20 23:39:39,797 INFO L290 TraceCheckUtils]: 42: Hoare triple {7575#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {7575#false} is VALID [2022-02-20 23:39:39,797 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:39,797 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:41,766 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:39:41,767 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 91 treesize of output 91 [2022-02-20 23:39:41,862 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 36 treesize of output 32 [2022-02-20 23:39:42,054 INFO L290 TraceCheckUtils]: 42: Hoare triple {7575#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {7575#false} is VALID [2022-02-20 23:39:42,055 INFO L290 TraceCheckUtils]: 41: Hoare triple {7575#false} assume cstrncmp_#t~short5#1; {7575#false} is VALID [2022-02-20 23:39:42,055 INFO L290 TraceCheckUtils]: 40: Hoare triple {7575#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7575#false} is VALID [2022-02-20 23:39:42,055 INFO L290 TraceCheckUtils]: 39: Hoare triple {7584#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7575#false} is VALID [2022-02-20 23:39:42,056 INFO L290 TraceCheckUtils]: 38: Hoare triple {7583#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7584#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:42,056 INFO L290 TraceCheckUtils]: 37: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7583#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:42,056 INFO L290 TraceCheckUtils]: 36: Hoare triple {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:42,057 INFO L290 TraceCheckUtils]: 35: Hoare triple {7745#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7582#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:42,057 INFO L290 TraceCheckUtils]: 34: Hoare triple {7749#(or (not (= |ULTIMATE.start_cstrncmp_#t~mem4#1| |ULTIMATE.start_cstrncmp_#t~mem3#1|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7745#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:39:42,058 INFO L290 TraceCheckUtils]: 33: Hoare triple {7753#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7749#(or (not (= |ULTIMATE.start_cstrncmp_#t~mem4#1| |ULTIMATE.start_cstrncmp_#t~mem3#1|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:39:42,058 INFO L290 TraceCheckUtils]: 32: Hoare triple {7757#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7753#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|))))} is VALID [2022-02-20 23:39:42,059 INFO L290 TraceCheckUtils]: 31: Hoare triple {7757#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {7757#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,060 INFO L290 TraceCheckUtils]: 30: Hoare triple {7757#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7757#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,060 INFO L290 TraceCheckUtils]: 29: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {7757#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,061 INFO L290 TraceCheckUtils]: 28: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,062 INFO L290 TraceCheckUtils]: 27: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,062 INFO L290 TraceCheckUtils]: 26: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1; {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,063 INFO L290 TraceCheckUtils]: 25: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,063 INFO L290 TraceCheckUtils]: 24: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,064 INFO L290 TraceCheckUtils]: 23: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,065 INFO L290 TraceCheckUtils]: 22: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,065 INFO L290 TraceCheckUtils]: 21: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,066 INFO L290 TraceCheckUtils]: 20: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,067 INFO L290 TraceCheckUtils]: 19: Hoare triple {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !(0 == cstrncmp_~n#1); {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,067 INFO L290 TraceCheckUtils]: 18: Hoare triple {7801#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {7767#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:42,068 INFO L290 TraceCheckUtils]: 17: Hoare triple {7636#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {7801#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:39:42,068 INFO L290 TraceCheckUtils]: 16: Hoare triple {7636#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {7636#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} is VALID [2022-02-20 23:39:42,069 INFO L290 TraceCheckUtils]: 15: Hoare triple {7811#(or (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7636#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} is VALID [2022-02-20 23:39:42,069 INFO L290 TraceCheckUtils]: 14: Hoare triple {7815#(or (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {7811#(or (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:42,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {7815#(or (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet20#1; {7815#(or (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:42,070 INFO L290 TraceCheckUtils]: 12: Hoare triple {7815#(or (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {7815#(or (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:42,071 INFO L290 TraceCheckUtils]: 11: Hoare triple {7618#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {7815#(or (and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:42,071 INFO L290 TraceCheckUtils]: 10: Hoare triple {7574#true} main_~i~1#1 := 0; {7618#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:42,071 INFO L290 TraceCheckUtils]: 9: Hoare triple {7574#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7574#true} is VALID [2022-02-20 23:39:42,071 INFO L290 TraceCheckUtils]: 8: Hoare triple {7574#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {7574#true} is VALID [2022-02-20 23:39:42,071 INFO L290 TraceCheckUtils]: 7: Hoare triple {7574#true} havoc main_#t~nondet18#1; {7574#true} is VALID [2022-02-20 23:39:42,071 INFO L290 TraceCheckUtils]: 6: Hoare triple {7574#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7574#true} is VALID [2022-02-20 23:39:42,071 INFO L290 TraceCheckUtils]: 5: Hoare triple {7574#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {7574#true} is VALID [2022-02-20 23:39:42,072 INFO L290 TraceCheckUtils]: 4: Hoare triple {7574#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {7574#true} is VALID [2022-02-20 23:39:42,072 INFO L290 TraceCheckUtils]: 3: Hoare triple {7574#true} assume !(main_~length2~0#1 < 1); {7574#true} is VALID [2022-02-20 23:39:42,072 INFO L290 TraceCheckUtils]: 2: Hoare triple {7574#true} assume !(main_~length1~0#1 < 1); {7574#true} is VALID [2022-02-20 23:39:42,072 INFO L290 TraceCheckUtils]: 1: Hoare triple {7574#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {7574#true} is VALID [2022-02-20 23:39:42,072 INFO L290 TraceCheckUtils]: 0: Hoare triple {7574#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7574#true} is VALID [2022-02-20 23:39:42,072 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 11 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:42,072 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [74557670] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:42,073 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:42,073 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 15, 15] total 29 [2022-02-20 23:39:42,073 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [250997606] [2022-02-20 23:39:42,073 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:42,073 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 3.413793103448276) internal successors, (99), 29 states have internal predecessors, (99), 0 states have call successors, (0), 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 43 [2022-02-20 23:39:42,074 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:42,074 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 29 states, 29 states have (on average 3.413793103448276) internal successors, (99), 29 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:42,150 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:42,150 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-02-20 23:39:42,150 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:42,150 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-02-20 23:39:42,150 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=82, Invalid=730, Unknown=0, NotChecked=0, Total=812 [2022-02-20 23:39:42,150 INFO L87 Difference]: Start difference. First operand 52 states and 54 transitions. Second operand has 29 states, 29 states have (on average 3.413793103448276) internal successors, (99), 29 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:43,007 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:43,007 INFO L93 Difference]: Finished difference Result 143 states and 148 transitions. [2022-02-20 23:39:43,007 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 35 states. [2022-02-20 23:39:43,007 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 3.413793103448276) internal successors, (99), 29 states have internal predecessors, (99), 0 states have call successors, (0), 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 43 [2022-02-20 23:39:43,008 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:43,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 3.413793103448276) internal successors, (99), 29 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:43,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 135 transitions. [2022-02-20 23:39:43,008 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 3.413793103448276) internal successors, (99), 29 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:43,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 135 transitions. [2022-02-20 23:39:43,009 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 35 states and 135 transitions. [2022-02-20 23:39:43,115 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:43,115 INFO L225 Difference]: With dead ends: 143 [2022-02-20 23:39:43,115 INFO L226 Difference]: Without dead ends: 66 [2022-02-20 23:39:43,116 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 115 GetRequests, 67 SyntacticMatches, 5 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 3 DeprecatedPredicates, 420 ImplicationChecksByTransitivity, 1.9s TimeCoverageRelationStatistics Valid=231, Invalid=1749, Unknown=0, NotChecked=0, Total=1980 [2022-02-20 23:39:43,116 INFO L933 BasicCegarLoop]: 25 mSDtfsCounter, 69 mSDsluCounter, 378 mSDsCounter, 0 mSdLazyCounter, 234 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 403 SdHoareTripleChecker+Invalid, 390 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 234 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 137 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:43,116 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [69 Valid, 403 Invalid, 390 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 234 Invalid, 0 Unknown, 137 Unchecked, 0.2s Time] [2022-02-20 23:39:43,117 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 66 states. [2022-02-20 23:39:43,117 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 66 to 60. [2022-02-20 23:39:43,117 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:43,118 INFO L82 GeneralOperation]: Start isEquivalent. First operand 66 states. Second operand has 60 states, 56 states have (on average 1.1071428571428572) internal successors, (62), 59 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:43,118 INFO L74 IsIncluded]: Start isIncluded. First operand 66 states. Second operand has 60 states, 56 states have (on average 1.1071428571428572) internal successors, (62), 59 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:43,118 INFO L87 Difference]: Start difference. First operand 66 states. Second operand has 60 states, 56 states have (on average 1.1071428571428572) internal successors, (62), 59 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:43,118 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:43,118 INFO L93 Difference]: Finished difference Result 66 states and 68 transitions. [2022-02-20 23:39:43,118 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 68 transitions. [2022-02-20 23:39:43,118 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:43,118 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:43,119 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 56 states have (on average 1.1071428571428572) internal successors, (62), 59 states have internal predecessors, (62), 0 states have call successors, (0), 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:39:43,119 INFO L87 Difference]: Start difference. First operand has 60 states, 56 states have (on average 1.1071428571428572) internal successors, (62), 59 states have internal predecessors, (62), 0 states have call successors, (0), 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:39:43,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:43,119 INFO L93 Difference]: Finished difference Result 66 states and 68 transitions. [2022-02-20 23:39:43,119 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 68 transitions. [2022-02-20 23:39:43,120 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:43,120 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:43,120 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:43,120 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:43,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 56 states have (on average 1.1071428571428572) internal successors, (62), 59 states have internal predecessors, (62), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:43,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 62 transitions. [2022-02-20 23:39:43,120 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 62 transitions. Word has length 43 [2022-02-20 23:39:43,120 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:43,120 INFO L470 AbstractCegarLoop]: Abstraction has 60 states and 62 transitions. [2022-02-20 23:39:43,120 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 3.413793103448276) internal successors, (99), 29 states have internal predecessors, (99), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:43,120 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 62 transitions. [2022-02-20 23:39:43,121 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-02-20 23:39:43,121 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:43,121 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:43,151 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:39:43,331 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable23 [2022-02-20 23:39:43,331 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:43,332 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:43,332 INFO L85 PathProgramCache]: Analyzing trace with hash 1808120587, now seen corresponding path program 2 times [2022-02-20 23:39:43,332 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:43,332 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [725172247] [2022-02-20 23:39:43,332 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:43,332 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:43,357 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:43,438 INFO L290 TraceCheckUtils]: 0: Hoare triple {8227#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8227#true} is VALID [2022-02-20 23:39:43,439 INFO L290 TraceCheckUtils]: 1: Hoare triple {8227#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {8227#true} is VALID [2022-02-20 23:39:43,439 INFO L290 TraceCheckUtils]: 2: Hoare triple {8227#true} assume !(main_~length1~0#1 < 1); {8227#true} is VALID [2022-02-20 23:39:43,439 INFO L290 TraceCheckUtils]: 3: Hoare triple {8227#true} assume !(main_~length2~0#1 < 1); {8227#true} is VALID [2022-02-20 23:39:43,440 INFO L290 TraceCheckUtils]: 4: Hoare triple {8227#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {8229#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,440 INFO L290 TraceCheckUtils]: 5: Hoare triple {8229#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8229#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,440 INFO L290 TraceCheckUtils]: 6: Hoare triple {8229#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8229#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,441 INFO L290 TraceCheckUtils]: 7: Hoare triple {8229#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {8229#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,441 INFO L290 TraceCheckUtils]: 8: Hoare triple {8229#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8230#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,442 INFO L290 TraceCheckUtils]: 9: Hoare triple {8230#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,442 INFO L290 TraceCheckUtils]: 10: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,443 INFO L290 TraceCheckUtils]: 11: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,443 INFO L290 TraceCheckUtils]: 12: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,444 INFO L290 TraceCheckUtils]: 14: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,444 INFO L290 TraceCheckUtils]: 15: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,445 INFO L290 TraceCheckUtils]: 16: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,445 INFO L290 TraceCheckUtils]: 17: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,446 INFO L290 TraceCheckUtils]: 18: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,446 INFO L290 TraceCheckUtils]: 19: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,447 INFO L290 TraceCheckUtils]: 20: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,447 INFO L290 TraceCheckUtils]: 21: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,447 INFO L290 TraceCheckUtils]: 22: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,448 INFO L290 TraceCheckUtils]: 23: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,448 INFO L290 TraceCheckUtils]: 24: Hoare triple {8231#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {8232#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,449 INFO L290 TraceCheckUtils]: 25: Hoare triple {8232#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {8232#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:43,449 INFO L290 TraceCheckUtils]: 26: Hoare triple {8232#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,450 INFO L290 TraceCheckUtils]: 27: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(0 == cstrncmp_~n#1); {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,450 INFO L290 TraceCheckUtils]: 28: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,451 INFO L290 TraceCheckUtils]: 29: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,451 INFO L290 TraceCheckUtils]: 30: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,452 INFO L290 TraceCheckUtils]: 31: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,452 INFO L290 TraceCheckUtils]: 32: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,453 INFO L290 TraceCheckUtils]: 33: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,453 INFO L290 TraceCheckUtils]: 34: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,454 INFO L290 TraceCheckUtils]: 35: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,454 INFO L290 TraceCheckUtils]: 36: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,454 INFO L290 TraceCheckUtils]: 37: Hoare triple {8233#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,455 INFO L290 TraceCheckUtils]: 38: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,455 INFO L290 TraceCheckUtils]: 39: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,456 INFO L290 TraceCheckUtils]: 40: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,456 INFO L290 TraceCheckUtils]: 41: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,457 INFO L290 TraceCheckUtils]: 42: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,457 INFO L290 TraceCheckUtils]: 43: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,458 INFO L290 TraceCheckUtils]: 44: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,458 INFO L290 TraceCheckUtils]: 45: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,459 INFO L290 TraceCheckUtils]: 46: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,459 INFO L290 TraceCheckUtils]: 47: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,460 INFO L290 TraceCheckUtils]: 48: Hoare triple {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,460 INFO L290 TraceCheckUtils]: 49: Hoare triple {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:43,461 INFO L290 TraceCheckUtils]: 50: Hoare triple {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {8228#false} is VALID [2022-02-20 23:39:43,461 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:43,461 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:43,461 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [725172247] [2022-02-20 23:39:43,461 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [725172247] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:43,461 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [464173755] [2022-02-20 23:39:43,461 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:39:43,462 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:43,462 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:43,463 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:39:43,464 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:39:43,560 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:39:43,560 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:43,561 INFO L263 TraceCheckSpWp]: Trace formula consists of 232 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-20 23:39:43,575 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:43,576 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:44,013 INFO L290 TraceCheckUtils]: 0: Hoare triple {8227#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8227#true} is VALID [2022-02-20 23:39:44,014 INFO L290 TraceCheckUtils]: 1: Hoare triple {8227#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {8227#true} is VALID [2022-02-20 23:39:44,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {8227#true} assume !(main_~length1~0#1 < 1); {8227#true} is VALID [2022-02-20 23:39:44,014 INFO L290 TraceCheckUtils]: 3: Hoare triple {8227#true} assume !(main_~length2~0#1 < 1); {8227#true} is VALID [2022-02-20 23:39:44,015 INFO L290 TraceCheckUtils]: 4: Hoare triple {8227#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,015 INFO L290 TraceCheckUtils]: 5: Hoare triple {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,015 INFO L290 TraceCheckUtils]: 6: Hoare triple {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,015 INFO L290 TraceCheckUtils]: 7: Hoare triple {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet18#1; {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,016 INFO L290 TraceCheckUtils]: 8: Hoare triple {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8264#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,016 INFO L290 TraceCheckUtils]: 9: Hoare triple {8264#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,016 INFO L290 TraceCheckUtils]: 10: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,017 INFO L290 TraceCheckUtils]: 11: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet18#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,017 INFO L290 TraceCheckUtils]: 12: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,017 INFO L290 TraceCheckUtils]: 13: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,018 INFO L290 TraceCheckUtils]: 14: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_~i~1#1 := 0; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,018 INFO L290 TraceCheckUtils]: 15: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,018 INFO L290 TraceCheckUtils]: 16: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,018 INFO L290 TraceCheckUtils]: 17: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,019 INFO L290 TraceCheckUtils]: 18: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,019 INFO L290 TraceCheckUtils]: 19: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,019 INFO L290 TraceCheckUtils]: 20: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,019 INFO L290 TraceCheckUtils]: 21: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,020 INFO L290 TraceCheckUtils]: 22: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,020 INFO L290 TraceCheckUtils]: 23: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,021 INFO L290 TraceCheckUtils]: 24: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {8314#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:39:44,021 INFO L290 TraceCheckUtils]: 25: Hoare triple {8314#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {8314#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:39:44,021 INFO L290 TraceCheckUtils]: 26: Hoare triple {8314#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {8321#(< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} is VALID [2022-02-20 23:39:44,022 INFO L290 TraceCheckUtils]: 27: Hoare triple {8321#(< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} assume !(0 == cstrncmp_~n#1); {8321#(< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} is VALID [2022-02-20 23:39:44,022 INFO L290 TraceCheckUtils]: 28: Hoare triple {8321#(< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8321#(< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} is VALID [2022-02-20 23:39:44,023 INFO L290 TraceCheckUtils]: 29: Hoare triple {8321#(< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} assume cstrncmp_#t~short5#1; {8321#(< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} is VALID [2022-02-20 23:39:44,023 INFO L290 TraceCheckUtils]: 30: Hoare triple {8321#(< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,023 INFO L290 TraceCheckUtils]: 31: Hoare triple {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,024 INFO L290 TraceCheckUtils]: 32: Hoare triple {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,024 INFO L290 TraceCheckUtils]: 33: Hoare triple {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,025 INFO L290 TraceCheckUtils]: 34: Hoare triple {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1; {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,025 INFO L290 TraceCheckUtils]: 35: Hoare triple {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,025 INFO L290 TraceCheckUtils]: 36: Hoare triple {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,026 INFO L290 TraceCheckUtils]: 37: Hoare triple {8334#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,026 INFO L290 TraceCheckUtils]: 38: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,027 INFO L290 TraceCheckUtils]: 39: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,027 INFO L290 TraceCheckUtils]: 40: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,027 INFO L290 TraceCheckUtils]: 41: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,028 INFO L290 TraceCheckUtils]: 42: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,028 INFO L290 TraceCheckUtils]: 43: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,029 INFO L290 TraceCheckUtils]: 44: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,029 INFO L290 TraceCheckUtils]: 45: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,029 INFO L290 TraceCheckUtils]: 46: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,030 INFO L290 TraceCheckUtils]: 47: Hoare triple {8234#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,030 INFO L290 TraceCheckUtils]: 48: Hoare triple {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,031 INFO L290 TraceCheckUtils]: 49: Hoare triple {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,031 INFO L290 TraceCheckUtils]: 50: Hoare triple {8235#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {8228#false} is VALID [2022-02-20 23:39:44,031 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 1 proven. 21 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:44,032 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:44,348 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:39:44,447 INFO L290 TraceCheckUtils]: 50: Hoare triple {8395#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {8228#false} is VALID [2022-02-20 23:39:44,448 INFO L290 TraceCheckUtils]: 49: Hoare triple {8395#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {8395#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,448 INFO L290 TraceCheckUtils]: 48: Hoare triple {8395#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8395#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,449 INFO L290 TraceCheckUtils]: 47: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8395#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:44,449 INFO L290 TraceCheckUtils]: 46: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,450 INFO L290 TraceCheckUtils]: 45: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,450 INFO L290 TraceCheckUtils]: 44: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !cstrncmp_#t~short7#1; {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,450 INFO L290 TraceCheckUtils]: 43: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,451 INFO L290 TraceCheckUtils]: 42: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,451 INFO L290 TraceCheckUtils]: 41: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,452 INFO L290 TraceCheckUtils]: 40: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,452 INFO L290 TraceCheckUtils]: 39: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume cstrncmp_#t~short5#1; {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,452 INFO L290 TraceCheckUtils]: 38: Hoare triple {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,453 INFO L290 TraceCheckUtils]: 37: Hoare triple {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8405#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:44,453 INFO L290 TraceCheckUtils]: 36: Hoare triple {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,454 INFO L290 TraceCheckUtils]: 35: Hoare triple {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,454 INFO L290 TraceCheckUtils]: 34: Hoare triple {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,455 INFO L290 TraceCheckUtils]: 33: Hoare triple {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,455 INFO L290 TraceCheckUtils]: 32: Hoare triple {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,455 INFO L290 TraceCheckUtils]: 31: Hoare triple {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,456 INFO L290 TraceCheckUtils]: 30: Hoare triple {8458#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8436#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,456 INFO L290 TraceCheckUtils]: 29: Hoare triple {8458#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {8458#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,457 INFO L290 TraceCheckUtils]: 28: Hoare triple {8458#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8458#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,457 INFO L290 TraceCheckUtils]: 27: Hoare triple {8458#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(0 == cstrncmp_~n#1); {8458#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,458 INFO L290 TraceCheckUtils]: 26: Hoare triple {8471#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {8458#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:44,458 INFO L290 TraceCheckUtils]: 25: Hoare triple {8471#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {8471#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:44,459 INFO L290 TraceCheckUtils]: 24: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {8471#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:44,459 INFO L290 TraceCheckUtils]: 23: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,459 INFO L290 TraceCheckUtils]: 22: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,459 INFO L290 TraceCheckUtils]: 21: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,460 INFO L290 TraceCheckUtils]: 20: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,460 INFO L290 TraceCheckUtils]: 19: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,460 INFO L290 TraceCheckUtils]: 18: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,461 INFO L290 TraceCheckUtils]: 17: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,461 INFO L290 TraceCheckUtils]: 16: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,461 INFO L290 TraceCheckUtils]: 15: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,461 INFO L290 TraceCheckUtils]: 14: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_~i~1#1 := 0; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,462 INFO L290 TraceCheckUtils]: 13: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,462 INFO L290 TraceCheckUtils]: 12: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,462 INFO L290 TraceCheckUtils]: 11: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet18#1; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,462 INFO L290 TraceCheckUtils]: 10: Hoare triple {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,463 INFO L290 TraceCheckUtils]: 9: Hoare triple {8264#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8268#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:44,463 INFO L290 TraceCheckUtils]: 8: Hoare triple {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8264#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,464 INFO L290 TraceCheckUtils]: 7: Hoare triple {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet18#1; {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,464 INFO L290 TraceCheckUtils]: 6: Hoare triple {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,464 INFO L290 TraceCheckUtils]: 5: Hoare triple {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,465 INFO L290 TraceCheckUtils]: 4: Hoare triple {8227#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {8251#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:44,465 INFO L290 TraceCheckUtils]: 3: Hoare triple {8227#true} assume !(main_~length2~0#1 < 1); {8227#true} is VALID [2022-02-20 23:39:44,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {8227#true} assume !(main_~length1~0#1 < 1); {8227#true} is VALID [2022-02-20 23:39:44,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {8227#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {8227#true} is VALID [2022-02-20 23:39:44,465 INFO L290 TraceCheckUtils]: 0: Hoare triple {8227#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8227#true} is VALID [2022-02-20 23:39:44,465 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 1 proven. 21 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:44,465 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [464173755] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:44,466 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:44,466 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 9] total 19 [2022-02-20 23:39:44,466 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [416475970] [2022-02-20 23:39:44,466 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:44,466 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 5.473684210526316) internal successors, (104), 20 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 51 [2022-02-20 23:39:44,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:44,467 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 20 states, 19 states have (on average 5.473684210526316) internal successors, (104), 20 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:44,542 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:44,542 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-02-20 23:39:44,543 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:44,543 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-02-20 23:39:44,543 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=62, Invalid=318, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:39:44,543 INFO L87 Difference]: Start difference. First operand 60 states and 62 transitions. Second operand has 20 states, 19 states have (on average 5.473684210526316) internal successors, (104), 20 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:45,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:45,099 INFO L93 Difference]: Finished difference Result 82 states and 84 transitions. [2022-02-20 23:39:45,099 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:39:45,099 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 5.473684210526316) internal successors, (104), 20 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 51 [2022-02-20 23:39:45,099 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:45,099 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 5.473684210526316) internal successors, (104), 20 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:45,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2022-02-20 23:39:45,100 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 5.473684210526316) internal successors, (104), 20 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:45,100 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 81 transitions. [2022-02-20 23:39:45,100 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 81 transitions. [2022-02-20 23:39:45,169 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:45,170 INFO L225 Difference]: With dead ends: 82 [2022-02-20 23:39:45,170 INFO L226 Difference]: Without dead ends: 82 [2022-02-20 23:39:45,170 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 114 GetRequests, 88 SyntacticMatches, 2 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 94 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=144, Invalid=506, Unknown=0, NotChecked=0, Total=650 [2022-02-20 23:39:45,171 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 333 mSDsluCounter, 203 mSDsCounter, 0 mSdLazyCounter, 226 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 333 SdHoareTripleChecker+Valid, 238 SdHoareTripleChecker+Invalid, 254 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 226 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:45,171 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [333 Valid, 238 Invalid, 254 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 226 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:39:45,171 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-02-20 23:39:45,172 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 71. [2022-02-20 23:39:45,172 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:45,173 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 71 states, 67 states have (on average 1.1044776119402986) internal successors, (74), 70 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:45,173 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 71 states, 67 states have (on average 1.1044776119402986) internal successors, (74), 70 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:45,173 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 71 states, 67 states have (on average 1.1044776119402986) internal successors, (74), 70 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:45,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:45,174 INFO L93 Difference]: Finished difference Result 82 states and 84 transitions. [2022-02-20 23:39:45,174 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 84 transitions. [2022-02-20 23:39:45,174 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:45,174 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:45,174 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 67 states have (on average 1.1044776119402986) internal successors, (74), 70 states have internal predecessors, (74), 0 states have call successors, (0), 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 82 states. [2022-02-20 23:39:45,174 INFO L87 Difference]: Start difference. First operand has 71 states, 67 states have (on average 1.1044776119402986) internal successors, (74), 70 states have internal predecessors, (74), 0 states have call successors, (0), 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 82 states. [2022-02-20 23:39:45,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:45,175 INFO L93 Difference]: Finished difference Result 82 states and 84 transitions. [2022-02-20 23:39:45,175 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 84 transitions. [2022-02-20 23:39:45,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:45,176 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:45,176 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:45,176 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:45,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 67 states have (on average 1.1044776119402986) internal successors, (74), 70 states have internal predecessors, (74), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:45,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 74 transitions. [2022-02-20 23:39:45,176 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 74 transitions. Word has length 51 [2022-02-20 23:39:45,177 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:45,177 INFO L470 AbstractCegarLoop]: Abstraction has 71 states and 74 transitions. [2022-02-20 23:39:45,177 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 19 states have (on average 5.473684210526316) internal successors, (104), 20 states have internal predecessors, (104), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:45,177 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 74 transitions. [2022-02-20 23:39:45,177 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-02-20 23:39:45,177 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:45,177 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:45,194 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:39:45,393 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:45,394 INFO L402 AbstractCegarLoop]: === Iteration 26 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:45,394 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:45,394 INFO L85 PathProgramCache]: Analyzing trace with hash 217163363, now seen corresponding path program 2 times [2022-02-20 23:39:45,394 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:45,394 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1837218181] [2022-02-20 23:39:45,394 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:45,394 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:45,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:45,511 INFO L290 TraceCheckUtils]: 0: Hoare triple {8878#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8878#true} is VALID [2022-02-20 23:39:45,511 INFO L290 TraceCheckUtils]: 1: Hoare triple {8878#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {8878#true} is VALID [2022-02-20 23:39:45,512 INFO L290 TraceCheckUtils]: 2: Hoare triple {8878#true} assume !(main_~length1~0#1 < 1); {8878#true} is VALID [2022-02-20 23:39:45,512 INFO L290 TraceCheckUtils]: 3: Hoare triple {8878#true} assume !(main_~length2~0#1 < 1); {8878#true} is VALID [2022-02-20 23:39:45,512 INFO L290 TraceCheckUtils]: 4: Hoare triple {8878#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,513 INFO L290 TraceCheckUtils]: 5: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,513 INFO L290 TraceCheckUtils]: 6: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,514 INFO L290 TraceCheckUtils]: 7: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,514 INFO L290 TraceCheckUtils]: 8: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,515 INFO L290 TraceCheckUtils]: 9: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,515 INFO L290 TraceCheckUtils]: 10: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,515 INFO L290 TraceCheckUtils]: 11: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,516 INFO L290 TraceCheckUtils]: 12: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,516 INFO L290 TraceCheckUtils]: 13: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,517 INFO L290 TraceCheckUtils]: 14: Hoare triple {8880#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_~i~1#1 := 0; {8881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,517 INFO L290 TraceCheckUtils]: 15: Hoare triple {8881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,518 INFO L290 TraceCheckUtils]: 16: Hoare triple {8881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,518 INFO L290 TraceCheckUtils]: 17: Hoare triple {8881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {8881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,518 INFO L290 TraceCheckUtils]: 18: Hoare triple {8881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8882#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} is VALID [2022-02-20 23:39:45,519 INFO L290 TraceCheckUtils]: 19: Hoare triple {8882#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,519 INFO L290 TraceCheckUtils]: 20: Hoare triple {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,520 INFO L290 TraceCheckUtils]: 21: Hoare triple {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,520 INFO L290 TraceCheckUtils]: 22: Hoare triple {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,521 INFO L290 TraceCheckUtils]: 23: Hoare triple {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,521 INFO L290 TraceCheckUtils]: 24: Hoare triple {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,522 INFO L290 TraceCheckUtils]: 25: Hoare triple {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:45,522 INFO L290 TraceCheckUtils]: 26: Hoare triple {8883#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,522 INFO L290 TraceCheckUtils]: 27: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(0 == cstrncmp_~n#1); {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,523 INFO L290 TraceCheckUtils]: 28: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,523 INFO L290 TraceCheckUtils]: 29: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,524 INFO L290 TraceCheckUtils]: 31: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,525 INFO L290 TraceCheckUtils]: 32: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,525 INFO L290 TraceCheckUtils]: 33: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,526 INFO L290 TraceCheckUtils]: 34: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,526 INFO L290 TraceCheckUtils]: 35: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,526 INFO L290 TraceCheckUtils]: 36: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,527 INFO L290 TraceCheckUtils]: 37: Hoare triple {8884#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,527 INFO L290 TraceCheckUtils]: 38: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,528 INFO L290 TraceCheckUtils]: 39: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,528 INFO L290 TraceCheckUtils]: 40: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,529 INFO L290 TraceCheckUtils]: 41: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,529 INFO L290 TraceCheckUtils]: 42: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,530 INFO L290 TraceCheckUtils]: 43: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,530 INFO L290 TraceCheckUtils]: 44: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,531 INFO L290 TraceCheckUtils]: 45: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,531 INFO L290 TraceCheckUtils]: 46: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,532 INFO L290 TraceCheckUtils]: 47: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,532 INFO L290 TraceCheckUtils]: 48: Hoare triple {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,533 INFO L290 TraceCheckUtils]: 49: Hoare triple {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,533 INFO L290 TraceCheckUtils]: 50: Hoare triple {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:45,534 INFO L290 TraceCheckUtils]: 51: Hoare triple {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {8879#false} is VALID [2022-02-20 23:39:45,534 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:45,534 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:45,534 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1837218181] [2022-02-20 23:39:45,534 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1837218181] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:45,534 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [281606491] [2022-02-20 23:39:45,535 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:39:45,535 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:45,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:45,548 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:39:45,567 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:39:45,647 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:39:45,647 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:45,649 INFO L263 TraceCheckSpWp]: Trace formula consists of 238 conjuncts, 22 conjunts are in the unsatisfiable core [2022-02-20 23:39:45,662 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:45,663 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:46,046 INFO L290 TraceCheckUtils]: 0: Hoare triple {8878#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8878#true} is VALID [2022-02-20 23:39:46,047 INFO L290 TraceCheckUtils]: 1: Hoare triple {8878#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {8878#true} is VALID [2022-02-20 23:39:46,047 INFO L290 TraceCheckUtils]: 2: Hoare triple {8878#true} assume !(main_~length1~0#1 < 1); {8878#true} is VALID [2022-02-20 23:39:46,047 INFO L290 TraceCheckUtils]: 3: Hoare triple {8878#true} assume !(main_~length2~0#1 < 1); {8878#true} is VALID [2022-02-20 23:39:46,047 INFO L290 TraceCheckUtils]: 4: Hoare triple {8878#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {8878#true} is VALID [2022-02-20 23:39:46,047 INFO L290 TraceCheckUtils]: 5: Hoare triple {8878#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8878#true} is VALID [2022-02-20 23:39:46,047 INFO L290 TraceCheckUtils]: 6: Hoare triple {8878#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8878#true} is VALID [2022-02-20 23:39:46,047 INFO L290 TraceCheckUtils]: 7: Hoare triple {8878#true} havoc main_#t~nondet18#1; {8878#true} is VALID [2022-02-20 23:39:46,047 INFO L290 TraceCheckUtils]: 8: Hoare triple {8878#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8878#true} is VALID [2022-02-20 23:39:46,048 INFO L290 TraceCheckUtils]: 9: Hoare triple {8878#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8878#true} is VALID [2022-02-20 23:39:46,048 INFO L290 TraceCheckUtils]: 10: Hoare triple {8878#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8878#true} is VALID [2022-02-20 23:39:46,048 INFO L290 TraceCheckUtils]: 11: Hoare triple {8878#true} havoc main_#t~nondet18#1; {8878#true} is VALID [2022-02-20 23:39:46,048 INFO L290 TraceCheckUtils]: 12: Hoare triple {8878#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8878#true} is VALID [2022-02-20 23:39:46,048 INFO L290 TraceCheckUtils]: 13: Hoare triple {8878#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8878#true} is VALID [2022-02-20 23:39:46,048 INFO L290 TraceCheckUtils]: 14: Hoare triple {8878#true} main_~i~1#1 := 0; {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,048 INFO L290 TraceCheckUtils]: 15: Hoare triple {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,049 INFO L290 TraceCheckUtils]: 16: Hoare triple {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,049 INFO L290 TraceCheckUtils]: 17: Hoare triple {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,049 INFO L290 TraceCheckUtils]: 18: Hoare triple {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8945#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,050 INFO L290 TraceCheckUtils]: 19: Hoare triple {8945#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,050 INFO L290 TraceCheckUtils]: 20: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,050 INFO L290 TraceCheckUtils]: 21: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet20#1; {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,050 INFO L290 TraceCheckUtils]: 22: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,051 INFO L290 TraceCheckUtils]: 23: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,051 INFO L290 TraceCheckUtils]: 24: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,051 INFO L290 TraceCheckUtils]: 25: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {8968#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} is VALID [2022-02-20 23:39:46,057 INFO L290 TraceCheckUtils]: 26: Hoare triple {8968#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:46,058 INFO L290 TraceCheckUtils]: 27: Hoare triple {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !(0 == cstrncmp_~n#1); {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:46,058 INFO L290 TraceCheckUtils]: 28: Hoare triple {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:46,059 INFO L290 TraceCheckUtils]: 29: Hoare triple {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume cstrncmp_#t~short5#1; {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:46,059 INFO L290 TraceCheckUtils]: 30: Hoare triple {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:46,060 INFO L290 TraceCheckUtils]: 31: Hoare triple {8972#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,061 INFO L290 TraceCheckUtils]: 32: Hoare triple {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,061 INFO L290 TraceCheckUtils]: 33: Hoare triple {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,061 INFO L290 TraceCheckUtils]: 34: Hoare triple {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1; {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,062 INFO L290 TraceCheckUtils]: 35: Hoare triple {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,062 INFO L290 TraceCheckUtils]: 36: Hoare triple {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,063 INFO L290 TraceCheckUtils]: 37: Hoare triple {8988#(and (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,063 INFO L290 TraceCheckUtils]: 38: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,063 INFO L290 TraceCheckUtils]: 39: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,064 INFO L290 TraceCheckUtils]: 40: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,064 INFO L290 TraceCheckUtils]: 41: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,065 INFO L290 TraceCheckUtils]: 42: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,065 INFO L290 TraceCheckUtils]: 43: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,065 INFO L290 TraceCheckUtils]: 44: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,066 INFO L290 TraceCheckUtils]: 45: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,066 INFO L290 TraceCheckUtils]: 46: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,067 INFO L290 TraceCheckUtils]: 47: Hoare triple {8885#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,067 INFO L290 TraceCheckUtils]: 48: Hoare triple {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,067 INFO L290 TraceCheckUtils]: 49: Hoare triple {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,068 INFO L290 TraceCheckUtils]: 50: Hoare triple {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:46,068 INFO L290 TraceCheckUtils]: 51: Hoare triple {8886#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {8879#false} is VALID [2022-02-20 23:39:46,068 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 1 proven. 23 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:46,068 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:46,400 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:39:46,457 INFO L290 TraceCheckUtils]: 51: Hoare triple {9049#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {8879#false} is VALID [2022-02-20 23:39:46,457 INFO L290 TraceCheckUtils]: 50: Hoare triple {9049#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9049#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,458 INFO L290 TraceCheckUtils]: 49: Hoare triple {9049#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume cstrncmp_#t~short5#1; {9049#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,458 INFO L290 TraceCheckUtils]: 48: Hoare triple {9049#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9049#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,459 INFO L290 TraceCheckUtils]: 47: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9049#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:46,459 INFO L290 TraceCheckUtils]: 46: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,459 INFO L290 TraceCheckUtils]: 45: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,460 INFO L290 TraceCheckUtils]: 44: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !cstrncmp_#t~short7#1; {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,460 INFO L290 TraceCheckUtils]: 43: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,463 INFO L290 TraceCheckUtils]: 42: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,464 INFO L290 TraceCheckUtils]: 41: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,464 INFO L290 TraceCheckUtils]: 40: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,464 INFO L290 TraceCheckUtils]: 39: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume cstrncmp_#t~short5#1; {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,465 INFO L290 TraceCheckUtils]: 38: Hoare triple {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,465 INFO L290 TraceCheckUtils]: 37: Hoare triple {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9062#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:46,466 INFO L290 TraceCheckUtils]: 36: Hoare triple {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,466 INFO L290 TraceCheckUtils]: 35: Hoare triple {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,466 INFO L290 TraceCheckUtils]: 34: Hoare triple {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !cstrncmp_#t~short7#1; {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,467 INFO L290 TraceCheckUtils]: 33: Hoare triple {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,467 INFO L290 TraceCheckUtils]: 32: Hoare triple {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,467 INFO L290 TraceCheckUtils]: 31: Hoare triple {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9093#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,468 INFO L290 TraceCheckUtils]: 30: Hoare triple {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,468 INFO L290 TraceCheckUtils]: 29: Hoare triple {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume cstrncmp_#t~short5#1; {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,468 INFO L290 TraceCheckUtils]: 28: Hoare triple {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,469 INFO L290 TraceCheckUtils]: 27: Hoare triple {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !(0 == cstrncmp_~n#1); {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,469 INFO L290 TraceCheckUtils]: 26: Hoare triple {9128#(or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {9112#(or (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:39:46,470 INFO L290 TraceCheckUtils]: 25: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {9128#(or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:46,470 INFO L290 TraceCheckUtils]: 24: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,470 INFO L290 TraceCheckUtils]: 23: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,470 INFO L290 TraceCheckUtils]: 22: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,471 INFO L290 TraceCheckUtils]: 21: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet20#1; {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,471 INFO L290 TraceCheckUtils]: 20: Hoare triple {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,471 INFO L290 TraceCheckUtils]: 19: Hoare triple {8945#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8949#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:46,472 INFO L290 TraceCheckUtils]: 18: Hoare triple {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {8945#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,472 INFO L290 TraceCheckUtils]: 17: Hoare triple {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,472 INFO L290 TraceCheckUtils]: 16: Hoare triple {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,487 INFO L290 TraceCheckUtils]: 15: Hoare triple {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 14: Hoare triple {8878#true} main_~i~1#1 := 0; {8932#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 13: Hoare triple {8878#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8878#true} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 12: Hoare triple {8878#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8878#true} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 11: Hoare triple {8878#true} havoc main_#t~nondet18#1; {8878#true} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 10: Hoare triple {8878#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8878#true} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 9: Hoare triple {8878#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8878#true} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 8: Hoare triple {8878#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {8878#true} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 7: Hoare triple {8878#true} havoc main_#t~nondet18#1; {8878#true} is VALID [2022-02-20 23:39:46,488 INFO L290 TraceCheckUtils]: 6: Hoare triple {8878#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8878#true} is VALID [2022-02-20 23:39:46,489 INFO L290 TraceCheckUtils]: 5: Hoare triple {8878#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {8878#true} is VALID [2022-02-20 23:39:46,489 INFO L290 TraceCheckUtils]: 4: Hoare triple {8878#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {8878#true} is VALID [2022-02-20 23:39:46,489 INFO L290 TraceCheckUtils]: 3: Hoare triple {8878#true} assume !(main_~length2~0#1 < 1); {8878#true} is VALID [2022-02-20 23:39:46,489 INFO L290 TraceCheckUtils]: 2: Hoare triple {8878#true} assume !(main_~length1~0#1 < 1); {8878#true} is VALID [2022-02-20 23:39:46,489 INFO L290 TraceCheckUtils]: 1: Hoare triple {8878#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {8878#true} is VALID [2022-02-20 23:39:46,489 INFO L290 TraceCheckUtils]: 0: Hoare triple {8878#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8878#true} is VALID [2022-02-20 23:39:46,489 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 1 proven. 23 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:46,490 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [281606491] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:46,490 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:46,490 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 9] total 19 [2022-02-20 23:39:46,490 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [926502739] [2022-02-20 23:39:46,490 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:46,490 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 5.526315789473684) internal successors, (105), 20 states have internal predecessors, (105), 0 states have call successors, (0), 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 52 [2022-02-20 23:39:46,491 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:46,491 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 20 states, 19 states have (on average 5.526315789473684) internal successors, (105), 20 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:46,549 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:46,550 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-02-20 23:39:46,550 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:46,550 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-02-20 23:39:46,550 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=320, Unknown=0, NotChecked=0, Total=380 [2022-02-20 23:39:46,551 INFO L87 Difference]: Start difference. First operand 71 states and 74 transitions. Second operand has 20 states, 19 states have (on average 5.526315789473684) internal successors, (105), 20 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:47,476 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:47,476 INFO L93 Difference]: Finished difference Result 80 states and 82 transitions. [2022-02-20 23:39:47,476 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:39:47,477 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 19 states have (on average 5.526315789473684) internal successors, (105), 20 states have internal predecessors, (105), 0 states have call successors, (0), 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 52 [2022-02-20 23:39:47,477 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:47,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 5.526315789473684) internal successors, (105), 20 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:47,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 79 transitions. [2022-02-20 23:39:47,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 5.526315789473684) internal successors, (105), 20 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:47,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 79 transitions. [2022-02-20 23:39:47,478 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 79 transitions. [2022-02-20 23:39:47,522 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:47,523 INFO L225 Difference]: With dead ends: 80 [2022-02-20 23:39:47,523 INFO L226 Difference]: Without dead ends: 76 [2022-02-20 23:39:47,523 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 90 SyntacticMatches, 2 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 92 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=141, Invalid=509, Unknown=0, NotChecked=0, Total=650 [2022-02-20 23:39:47,523 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 387 mSDsluCounter, 214 mSDsCounter, 0 mSdLazyCounter, 226 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 387 SdHoareTripleChecker+Valid, 248 SdHoareTripleChecker+Invalid, 262 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 226 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:47,524 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [387 Valid, 248 Invalid, 262 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 226 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:39:47,524 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 76 states. [2022-02-20 23:39:47,525 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 76 to 70. [2022-02-20 23:39:47,525 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:47,525 INFO L82 GeneralOperation]: Start isEquivalent. First operand 76 states. Second operand has 70 states, 66 states have (on average 1.0909090909090908) internal successors, (72), 69 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:47,525 INFO L74 IsIncluded]: Start isIncluded. First operand 76 states. Second operand has 70 states, 66 states have (on average 1.0909090909090908) internal successors, (72), 69 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:47,525 INFO L87 Difference]: Start difference. First operand 76 states. Second operand has 70 states, 66 states have (on average 1.0909090909090908) internal successors, (72), 69 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:47,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:47,525 INFO L93 Difference]: Finished difference Result 76 states and 78 transitions. [2022-02-20 23:39:47,526 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 78 transitions. [2022-02-20 23:39:47,526 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:47,526 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:47,526 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 66 states have (on average 1.0909090909090908) internal successors, (72), 69 states have internal predecessors, (72), 0 states have call successors, (0), 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 76 states. [2022-02-20 23:39:47,526 INFO L87 Difference]: Start difference. First operand has 70 states, 66 states have (on average 1.0909090909090908) internal successors, (72), 69 states have internal predecessors, (72), 0 states have call successors, (0), 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 76 states. [2022-02-20 23:39:47,526 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:47,526 INFO L93 Difference]: Finished difference Result 76 states and 78 transitions. [2022-02-20 23:39:47,526 INFO L276 IsEmpty]: Start isEmpty. Operand 76 states and 78 transitions. [2022-02-20 23:39:47,527 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:47,527 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:47,527 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:47,527 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:47,527 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 66 states have (on average 1.0909090909090908) internal successors, (72), 69 states have internal predecessors, (72), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:47,527 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 72 transitions. [2022-02-20 23:39:47,527 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 72 transitions. Word has length 52 [2022-02-20 23:39:47,527 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:47,527 INFO L470 AbstractCegarLoop]: Abstraction has 70 states and 72 transitions. [2022-02-20 23:39:47,527 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 19 states have (on average 5.526315789473684) internal successors, (105), 20 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:47,527 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 72 transitions. [2022-02-20 23:39:47,528 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-02-20 23:39:47,528 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:47,528 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:47,550 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:39:47,728 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable25,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:47,728 INFO L402 AbstractCegarLoop]: === Iteration 27 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:47,729 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:47,729 INFO L85 PathProgramCache]: Analyzing trace with hash 1900752950, now seen corresponding path program 3 times [2022-02-20 23:39:47,729 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:47,729 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2021062674] [2022-02-20 23:39:47,729 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:47,729 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:47,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:47,937 INFO L290 TraceCheckUtils]: 0: Hoare triple {9520#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9520#true} is VALID [2022-02-20 23:39:47,938 INFO L290 TraceCheckUtils]: 1: Hoare triple {9520#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {9520#true} is VALID [2022-02-20 23:39:47,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {9520#true} assume !(main_~length1~0#1 < 1); {9520#true} is VALID [2022-02-20 23:39:47,938 INFO L290 TraceCheckUtils]: 3: Hoare triple {9520#true} assume !(main_~length2~0#1 < 1); {9520#true} is VALID [2022-02-20 23:39:47,939 INFO L290 TraceCheckUtils]: 4: Hoare triple {9520#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:47,940 INFO L290 TraceCheckUtils]: 5: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:47,940 INFO L290 TraceCheckUtils]: 6: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:47,941 INFO L290 TraceCheckUtils]: 7: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:47,941 INFO L290 TraceCheckUtils]: 8: Hoare triple {9522#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {9523#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:47,942 INFO L290 TraceCheckUtils]: 9: Hoare triple {9523#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {9524#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:47,943 INFO L290 TraceCheckUtils]: 10: Hoare triple {9524#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9524#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:47,943 INFO L290 TraceCheckUtils]: 11: Hoare triple {9524#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet18#1; {9524#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:47,944 INFO L290 TraceCheckUtils]: 12: Hoare triple {9524#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {9525#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:47,944 INFO L290 TraceCheckUtils]: 13: Hoare triple {9525#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,945 INFO L290 TraceCheckUtils]: 14: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} main_~i~1#1 := 0; {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,945 INFO L290 TraceCheckUtils]: 15: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,946 INFO L290 TraceCheckUtils]: 16: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,947 INFO L290 TraceCheckUtils]: 17: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} havoc main_#t~nondet20#1; {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,947 INFO L290 TraceCheckUtils]: 18: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,948 INFO L290 TraceCheckUtils]: 19: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,948 INFO L290 TraceCheckUtils]: 20: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,949 INFO L290 TraceCheckUtils]: 21: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} havoc main_#t~nondet20#1; {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,949 INFO L290 TraceCheckUtils]: 22: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,950 INFO L290 TraceCheckUtils]: 23: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} is VALID [2022-02-20 23:39:47,950 INFO L290 TraceCheckUtils]: 24: Hoare triple {9526#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~length1~0#1| 3))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {9527#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:47,951 INFO L290 TraceCheckUtils]: 25: Hoare triple {9527#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {9527#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:47,952 INFO L290 TraceCheckUtils]: 26: Hoare triple {9527#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2)) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,953 INFO L290 TraceCheckUtils]: 27: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} assume !(0 == cstrncmp_~n#1); {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,953 INFO L290 TraceCheckUtils]: 28: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,953 INFO L290 TraceCheckUtils]: 29: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} assume cstrncmp_#t~short5#1; {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,954 INFO L290 TraceCheckUtils]: 30: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,955 INFO L290 TraceCheckUtils]: 31: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,955 INFO L290 TraceCheckUtils]: 32: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,956 INFO L290 TraceCheckUtils]: 33: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,956 INFO L290 TraceCheckUtils]: 34: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} assume !cstrncmp_#t~short7#1; {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,957 INFO L290 TraceCheckUtils]: 35: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,957 INFO L290 TraceCheckUtils]: 36: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} is VALID [2022-02-20 23:39:47,958 INFO L290 TraceCheckUtils]: 37: Hoare triple {9528#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 2) 0))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,958 INFO L290 TraceCheckUtils]: 38: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,958 INFO L290 TraceCheckUtils]: 39: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume cstrncmp_#t~short5#1; {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,959 INFO L290 TraceCheckUtils]: 40: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,959 INFO L290 TraceCheckUtils]: 41: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,959 INFO L290 TraceCheckUtils]: 42: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,960 INFO L290 TraceCheckUtils]: 43: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,960 INFO L290 TraceCheckUtils]: 44: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !cstrncmp_#t~short7#1; {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,961 INFO L290 TraceCheckUtils]: 45: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,961 INFO L290 TraceCheckUtils]: 46: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:47,962 INFO L290 TraceCheckUtils]: 47: Hoare triple {9529#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:47,962 INFO L290 TraceCheckUtils]: 48: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:47,962 INFO L290 TraceCheckUtils]: 49: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume cstrncmp_#t~short5#1; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:47,963 INFO L290 TraceCheckUtils]: 50: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:47,963 INFO L290 TraceCheckUtils]: 51: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:47,963 INFO L290 TraceCheckUtils]: 52: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:47,964 INFO L290 TraceCheckUtils]: 53: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:47,964 INFO L290 TraceCheckUtils]: 54: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:47,965 INFO L290 TraceCheckUtils]: 55: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9531#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:47,965 INFO L290 TraceCheckUtils]: 56: Hoare triple {9531#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9532#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:47,965 INFO L290 TraceCheckUtils]: 57: Hoare triple {9532#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9521#false} is VALID [2022-02-20 23:39:47,966 INFO L290 TraceCheckUtils]: 58: Hoare triple {9521#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9521#false} is VALID [2022-02-20 23:39:47,966 INFO L290 TraceCheckUtils]: 59: Hoare triple {9521#false} assume cstrncmp_#t~short5#1; {9521#false} is VALID [2022-02-20 23:39:47,966 INFO L290 TraceCheckUtils]: 60: Hoare triple {9521#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {9521#false} is VALID [2022-02-20 23:39:47,966 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 9 proven. 36 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:47,966 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:47,967 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2021062674] [2022-02-20 23:39:47,967 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2021062674] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:47,967 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [228970713] [2022-02-20 23:39:47,967 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:39:47,967 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:47,967 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:47,969 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:39:47,972 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:39:48,090 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-02-20 23:39:48,090 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:48,092 INFO L263 TraceCheckSpWp]: Trace formula consists of 270 conjuncts, 39 conjunts are in the unsatisfiable core [2022-02-20 23:39:48,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:48,112 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:48,290 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:39:50,505 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:39:50,515 INFO L290 TraceCheckUtils]: 0: Hoare triple {9520#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9520#true} is VALID [2022-02-20 23:39:50,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {9520#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {9520#true} is VALID [2022-02-20 23:39:50,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {9520#true} assume !(main_~length1~0#1 < 1); {9520#true} is VALID [2022-02-20 23:39:50,515 INFO L290 TraceCheckUtils]: 3: Hoare triple {9520#true} assume !(main_~length2~0#1 < 1); {9520#true} is VALID [2022-02-20 23:39:50,515 INFO L290 TraceCheckUtils]: 4: Hoare triple {9520#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {9520#true} is VALID [2022-02-20 23:39:50,516 INFO L290 TraceCheckUtils]: 5: Hoare triple {9520#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {9520#true} is VALID [2022-02-20 23:39:50,516 INFO L290 TraceCheckUtils]: 6: Hoare triple {9520#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9520#true} is VALID [2022-02-20 23:39:50,516 INFO L290 TraceCheckUtils]: 7: Hoare triple {9520#true} havoc main_#t~nondet18#1; {9520#true} is VALID [2022-02-20 23:39:50,516 INFO L290 TraceCheckUtils]: 8: Hoare triple {9520#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {9520#true} is VALID [2022-02-20 23:39:50,516 INFO L290 TraceCheckUtils]: 9: Hoare triple {9520#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {9520#true} is VALID [2022-02-20 23:39:50,516 INFO L290 TraceCheckUtils]: 10: Hoare triple {9520#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9520#true} is VALID [2022-02-20 23:39:50,516 INFO L290 TraceCheckUtils]: 11: Hoare triple {9520#true} havoc main_#t~nondet18#1; {9520#true} is VALID [2022-02-20 23:39:50,516 INFO L290 TraceCheckUtils]: 12: Hoare triple {9520#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {9520#true} is VALID [2022-02-20 23:39:50,517 INFO L290 TraceCheckUtils]: 13: Hoare triple {9520#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {9520#true} is VALID [2022-02-20 23:39:50,517 INFO L290 TraceCheckUtils]: 14: Hoare triple {9520#true} main_~i~1#1 := 0; {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:50,517 INFO L290 TraceCheckUtils]: 15: Hoare triple {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:50,517 INFO L290 TraceCheckUtils]: 16: Hoare triple {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:50,518 INFO L290 TraceCheckUtils]: 17: Hoare triple {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~nondet20#1; {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:50,518 INFO L290 TraceCheckUtils]: 18: Hoare triple {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {9591#(= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0)} is VALID [2022-02-20 23:39:50,519 INFO L290 TraceCheckUtils]: 19: Hoare triple {9591#(= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {9595#(and (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:50,519 INFO L290 TraceCheckUtils]: 20: Hoare triple {9595#(and (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {9595#(and (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:50,519 INFO L290 TraceCheckUtils]: 21: Hoare triple {9595#(and (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet20#1; {9595#(and (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:50,520 INFO L290 TraceCheckUtils]: 22: Hoare triple {9595#(and (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {9605#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (< 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:50,520 INFO L290 TraceCheckUtils]: 23: Hoare triple {9605#(and (<= |ULTIMATE.start_main_~i~1#1| 2) (< 2 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {9609#(and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:50,521 INFO L290 TraceCheckUtils]: 24: Hoare triple {9609#(and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {9609#(and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:50,522 INFO L290 TraceCheckUtils]: 25: Hoare triple {9609#(and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {9616#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |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:39:50,522 INFO L290 TraceCheckUtils]: 26: Hoare triple {9616#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,523 INFO L290 TraceCheckUtils]: 27: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume !(0 == cstrncmp_~n#1); {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,523 INFO L290 TraceCheckUtils]: 28: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,523 INFO L290 TraceCheckUtils]: 29: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume cstrncmp_#t~short5#1; {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,524 INFO L290 TraceCheckUtils]: 30: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,524 INFO L290 TraceCheckUtils]: 31: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,524 INFO L290 TraceCheckUtils]: 32: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,525 INFO L290 TraceCheckUtils]: 33: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,525 INFO L290 TraceCheckUtils]: 34: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume !cstrncmp_#t~short7#1; {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,525 INFO L290 TraceCheckUtils]: 35: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,526 INFO L290 TraceCheckUtils]: 36: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,527 INFO L290 TraceCheckUtils]: 37: Hoare triple {9620#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,528 INFO L290 TraceCheckUtils]: 38: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,528 INFO L290 TraceCheckUtils]: 39: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume cstrncmp_#t~short5#1; {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,529 INFO L290 TraceCheckUtils]: 40: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,529 INFO L290 TraceCheckUtils]: 41: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,530 INFO L290 TraceCheckUtils]: 42: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,531 INFO L290 TraceCheckUtils]: 43: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,531 INFO L290 TraceCheckUtils]: 44: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume !cstrncmp_#t~short7#1; {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,532 INFO L290 TraceCheckUtils]: 45: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,533 INFO L290 TraceCheckUtils]: 46: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,534 INFO L290 TraceCheckUtils]: 47: Hoare triple {9654#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9685#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,535 INFO L290 TraceCheckUtils]: 48: Hoare triple {9685#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9685#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,535 INFO L290 TraceCheckUtils]: 49: Hoare triple {9685#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume cstrncmp_#t~short5#1; {9685#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,536 INFO L290 TraceCheckUtils]: 50: Hoare triple {9685#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9695#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:50,538 INFO L290 TraceCheckUtils]: 51: Hoare triple {9695#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9699#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_cstrncmp_#t~mem4#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|)))))} is VALID [2022-02-20 23:39:50,563 INFO L290 TraceCheckUtils]: 52: Hoare triple {9699#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_cstrncmp_#t~mem4#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|)))))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9703#(exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (or (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) |ULTIMATE.start_cstrncmp_#t~short5#1|) (and (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))))) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:50,574 INFO L290 TraceCheckUtils]: 53: Hoare triple {9703#(exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3) (or (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) |ULTIMATE.start_cstrncmp_#t~short5#1|) (and (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))))) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:50,574 INFO L290 TraceCheckUtils]: 54: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:50,575 INFO L290 TraceCheckUtils]: 55: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9531#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:50,575 INFO L290 TraceCheckUtils]: 56: Hoare triple {9531#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9532#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:50,576 INFO L290 TraceCheckUtils]: 57: Hoare triple {9532#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9521#false} is VALID [2022-02-20 23:39:50,576 INFO L290 TraceCheckUtils]: 58: Hoare triple {9521#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9521#false} is VALID [2022-02-20 23:39:50,576 INFO L290 TraceCheckUtils]: 59: Hoare triple {9521#false} assume cstrncmp_#t~short5#1; {9521#false} is VALID [2022-02-20 23:39:50,576 INFO L290 TraceCheckUtils]: 60: Hoare triple {9521#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {9521#false} is VALID [2022-02-20 23:39:50,577 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 9 proven. 36 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:50,577 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:51,599 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:39:51,602 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 91 treesize of output 91 [2022-02-20 23:39:51,694 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 36 treesize of output 32 [2022-02-20 23:39:51,905 INFO L290 TraceCheckUtils]: 60: Hoare triple {9521#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {9521#false} is VALID [2022-02-20 23:39:51,905 INFO L290 TraceCheckUtils]: 59: Hoare triple {9521#false} assume cstrncmp_#t~short5#1; {9521#false} is VALID [2022-02-20 23:39:51,906 INFO L290 TraceCheckUtils]: 58: Hoare triple {9521#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9521#false} is VALID [2022-02-20 23:39:51,906 INFO L290 TraceCheckUtils]: 57: Hoare triple {9532#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9521#false} is VALID [2022-02-20 23:39:51,906 INFO L290 TraceCheckUtils]: 56: Hoare triple {9531#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9532#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:51,907 INFO L290 TraceCheckUtils]: 55: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9531#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:51,907 INFO L290 TraceCheckUtils]: 54: Hoare triple {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:51,908 INFO L290 TraceCheckUtils]: 53: Hoare triple {9749#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9530#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:51,908 INFO L290 TraceCheckUtils]: 52: Hoare triple {9753#(or (not (= |ULTIMATE.start_cstrncmp_#t~mem4#1| |ULTIMATE.start_cstrncmp_#t~mem3#1|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9749#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:39:51,909 INFO L290 TraceCheckUtils]: 51: Hoare triple {9757#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9753#(or (not (= |ULTIMATE.start_cstrncmp_#t~mem4#1| |ULTIMATE.start_cstrncmp_#t~mem3#1|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:39:51,909 INFO L290 TraceCheckUtils]: 50: Hoare triple {9761#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9757#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|))))} is VALID [2022-02-20 23:39:51,910 INFO L290 TraceCheckUtils]: 49: Hoare triple {9761#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {9761#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,911 INFO L290 TraceCheckUtils]: 48: Hoare triple {9761#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9761#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,912 INFO L290 TraceCheckUtils]: 47: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9761#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,913 INFO L290 TraceCheckUtils]: 46: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,913 INFO L290 TraceCheckUtils]: 45: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,914 INFO L290 TraceCheckUtils]: 44: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1; {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,915 INFO L290 TraceCheckUtils]: 43: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,915 INFO L290 TraceCheckUtils]: 42: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,916 INFO L290 TraceCheckUtils]: 41: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,917 INFO L290 TraceCheckUtils]: 40: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,918 INFO L290 TraceCheckUtils]: 39: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,919 INFO L290 TraceCheckUtils]: 38: Hoare triple {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,920 INFO L290 TraceCheckUtils]: 37: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {9771#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,920 INFO L290 TraceCheckUtils]: 36: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,921 INFO L290 TraceCheckUtils]: 35: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,921 INFO L290 TraceCheckUtils]: 34: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1; {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,922 INFO L290 TraceCheckUtils]: 33: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,922 INFO L290 TraceCheckUtils]: 32: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,923 INFO L290 TraceCheckUtils]: 31: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,923 INFO L290 TraceCheckUtils]: 30: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,923 INFO L290 TraceCheckUtils]: 29: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,924 INFO L290 TraceCheckUtils]: 28: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,924 INFO L290 TraceCheckUtils]: 27: Hoare triple {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !(0 == cstrncmp_~n#1); {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,925 INFO L290 TraceCheckUtils]: 26: Hoare triple {9836#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {9802#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,926 INFO L290 TraceCheckUtils]: 25: Hoare triple {9609#(and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {9836#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:39:51,927 INFO L290 TraceCheckUtils]: 24: Hoare triple {9609#(and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {9609#(and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:51,927 INFO L290 TraceCheckUtils]: 23: Hoare triple {9846#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {9609#(and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:51,928 INFO L290 TraceCheckUtils]: 22: Hoare triple {9850#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {9846#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:51,928 INFO L290 TraceCheckUtils]: 21: Hoare triple {9850#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} havoc main_#t~nondet20#1; {9850#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:51,929 INFO L290 TraceCheckUtils]: 20: Hoare triple {9850#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {9850#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:51,929 INFO L290 TraceCheckUtils]: 19: Hoare triple {9591#(= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {9850#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (<= |ULTIMATE.start_main_~length2~0#1| 3) (< 2 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:51,930 INFO L290 TraceCheckUtils]: 18: Hoare triple {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {9591#(= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0)} is VALID [2022-02-20 23:39:51,930 INFO L290 TraceCheckUtils]: 17: Hoare triple {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~nondet20#1; {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:51,930 INFO L290 TraceCheckUtils]: 16: Hoare triple {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:51,931 INFO L290 TraceCheckUtils]: 15: Hoare triple {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:51,931 INFO L290 TraceCheckUtils]: 14: Hoare triple {9520#true} main_~i~1#1 := 0; {9578#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:51,931 INFO L290 TraceCheckUtils]: 13: Hoare triple {9520#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {9520#true} is VALID [2022-02-20 23:39:51,931 INFO L290 TraceCheckUtils]: 12: Hoare triple {9520#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {9520#true} is VALID [2022-02-20 23:39:51,932 INFO L290 TraceCheckUtils]: 11: Hoare triple {9520#true} havoc main_#t~nondet18#1; {9520#true} is VALID [2022-02-20 23:39:51,932 INFO L290 TraceCheckUtils]: 10: Hoare triple {9520#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9520#true} is VALID [2022-02-20 23:39:51,932 INFO L290 TraceCheckUtils]: 9: Hoare triple {9520#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {9520#true} is VALID [2022-02-20 23:39:51,932 INFO L290 TraceCheckUtils]: 8: Hoare triple {9520#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {9520#true} is VALID [2022-02-20 23:39:51,932 INFO L290 TraceCheckUtils]: 7: Hoare triple {9520#true} havoc main_#t~nondet18#1; {9520#true} is VALID [2022-02-20 23:39:51,932 INFO L290 TraceCheckUtils]: 6: Hoare triple {9520#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9520#true} is VALID [2022-02-20 23:39:51,932 INFO L290 TraceCheckUtils]: 5: Hoare triple {9520#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {9520#true} is VALID [2022-02-20 23:39:51,933 INFO L290 TraceCheckUtils]: 4: Hoare triple {9520#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {9520#true} is VALID [2022-02-20 23:39:51,933 INFO L290 TraceCheckUtils]: 3: Hoare triple {9520#true} assume !(main_~length2~0#1 < 1); {9520#true} is VALID [2022-02-20 23:39:51,933 INFO L290 TraceCheckUtils]: 2: Hoare triple {9520#true} assume !(main_~length1~0#1 < 1); {9520#true} is VALID [2022-02-20 23:39:51,933 INFO L290 TraceCheckUtils]: 1: Hoare triple {9520#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {9520#true} is VALID [2022-02-20 23:39:51,933 INFO L290 TraceCheckUtils]: 0: Hoare triple {9520#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9520#true} is VALID [2022-02-20 23:39:51,934 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 9 proven. 36 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2022-02-20 23:39:51,934 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [228970713] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:51,934 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:51,934 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 17, 17] total 34 [2022-02-20 23:39:51,934 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1432193814] [2022-02-20 23:39:51,934 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:51,936 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 34 states have (on average 4.029411764705882) internal successors, (137), 34 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 61 [2022-02-20 23:39:51,936 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:51,937 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 34 states, 34 states have (on average 4.029411764705882) internal successors, (137), 34 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:52,048 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 137 edges. 137 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:52,048 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 34 states [2022-02-20 23:39:52,049 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:52,049 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 34 interpolants. [2022-02-20 23:39:52,049 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=1032, Unknown=0, NotChecked=0, Total=1122 [2022-02-20 23:39:52,049 INFO L87 Difference]: Start difference. First operand 70 states and 72 transitions. Second operand has 34 states, 34 states have (on average 4.029411764705882) internal successors, (137), 34 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:53,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:53,721 INFO L93 Difference]: Finished difference Result 195 states and 200 transitions. [2022-02-20 23:39:53,721 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 43 states. [2022-02-20 23:39:53,721 INFO L78 Accepts]: Start accepts. Automaton has has 34 states, 34 states have (on average 4.029411764705882) internal successors, (137), 34 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 61 [2022-02-20 23:39:53,721 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:53,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 34 states have (on average 4.029411764705882) internal successors, (137), 34 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:53,722 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 177 transitions. [2022-02-20 23:39:53,722 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 34 states have (on average 4.029411764705882) internal successors, (137), 34 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:53,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 43 states to 43 states and 177 transitions. [2022-02-20 23:39:53,723 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 43 states and 177 transitions. [2022-02-20 23:39:53,919 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 177 edges. 177 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:53,920 INFO L225 Difference]: With dead ends: 195 [2022-02-20 23:39:53,920 INFO L226 Difference]: Without dead ends: 84 [2022-02-20 23:39:53,920 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 161 GetRequests, 101 SyntacticMatches, 6 SemanticMatches, 54 ConstructedPredicates, 0 IntricatePredicates, 4 DeprecatedPredicates, 554 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=267, Invalid=2813, Unknown=0, NotChecked=0, Total=3080 [2022-02-20 23:39:53,921 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 81 mSDsluCounter, 684 mSDsCounter, 0 mSdLazyCounter, 440 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 81 SdHoareTripleChecker+Valid, 717 SdHoareTripleChecker+Invalid, 630 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 440 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 170 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:53,921 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [81 Valid, 717 Invalid, 630 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 440 Invalid, 0 Unknown, 170 Unchecked, 0.3s Time] [2022-02-20 23:39:53,921 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 84 states. [2022-02-20 23:39:53,922 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 84 to 78. [2022-02-20 23:39:53,922 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:53,922 INFO L82 GeneralOperation]: Start isEquivalent. First operand 84 states. Second operand has 78 states, 74 states have (on average 1.0810810810810811) internal successors, (80), 77 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:53,922 INFO L74 IsIncluded]: Start isIncluded. First operand 84 states. Second operand has 78 states, 74 states have (on average 1.0810810810810811) internal successors, (80), 77 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:53,922 INFO L87 Difference]: Start difference. First operand 84 states. Second operand has 78 states, 74 states have (on average 1.0810810810810811) internal successors, (80), 77 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:53,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:53,923 INFO L93 Difference]: Finished difference Result 84 states and 86 transitions. [2022-02-20 23:39:53,923 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 86 transitions. [2022-02-20 23:39:53,923 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:53,923 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:53,923 INFO L74 IsIncluded]: Start isIncluded. First operand has 78 states, 74 states have (on average 1.0810810810810811) internal successors, (80), 77 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 84 states. [2022-02-20 23:39:53,924 INFO L87 Difference]: Start difference. First operand has 78 states, 74 states have (on average 1.0810810810810811) internal successors, (80), 77 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 84 states. [2022-02-20 23:39:53,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:53,924 INFO L93 Difference]: Finished difference Result 84 states and 86 transitions. [2022-02-20 23:39:53,924 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 86 transitions. [2022-02-20 23:39:53,924 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:53,924 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:53,924 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:53,924 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:53,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 74 states have (on average 1.0810810810810811) internal successors, (80), 77 states have internal predecessors, (80), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:53,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 80 transitions. [2022-02-20 23:39:53,925 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 80 transitions. Word has length 61 [2022-02-20 23:39:53,925 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:53,925 INFO L470 AbstractCegarLoop]: Abstraction has 78 states and 80 transitions. [2022-02-20 23:39:53,925 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 34 states, 34 states have (on average 4.029411764705882) internal successors, (137), 34 states have internal predecessors, (137), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:53,925 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 80 transitions. [2022-02-20 23:39:53,926 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 70 [2022-02-20 23:39:53,926 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:53,926 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:53,949 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-02-20 23:39:54,126 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,SelfDestructingSolverStorable26 [2022-02-20 23:39:54,126 INFO L402 AbstractCegarLoop]: === Iteration 28 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:54,126 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:54,127 INFO L85 PathProgramCache]: Analyzing trace with hash -1604309508, now seen corresponding path program 4 times [2022-02-20 23:39:54,127 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:54,127 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1257535778] [2022-02-20 23:39:54,127 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:54,127 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:54,161 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:54,322 INFO L290 TraceCheckUtils]: 0: Hoare triple {10406#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10406#true} is VALID [2022-02-20 23:39:54,322 INFO L290 TraceCheckUtils]: 1: Hoare triple {10406#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {10406#true} is VALID [2022-02-20 23:39:54,322 INFO L290 TraceCheckUtils]: 2: Hoare triple {10406#true} assume !(main_~length1~0#1 < 1); {10406#true} is VALID [2022-02-20 23:39:54,322 INFO L290 TraceCheckUtils]: 3: Hoare triple {10406#true} assume !(main_~length2~0#1 < 1); {10406#true} is VALID [2022-02-20 23:39:54,323 INFO L290 TraceCheckUtils]: 4: Hoare triple {10406#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {10408#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,323 INFO L290 TraceCheckUtils]: 5: Hoare triple {10408#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10408#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,324 INFO L290 TraceCheckUtils]: 6: Hoare triple {10408#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10408#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,324 INFO L290 TraceCheckUtils]: 7: Hoare triple {10408#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {10408#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,325 INFO L290 TraceCheckUtils]: 8: Hoare triple {10408#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10409#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,325 INFO L290 TraceCheckUtils]: 9: Hoare triple {10409#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10409#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,325 INFO L290 TraceCheckUtils]: 10: Hoare triple {10409#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10409#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,326 INFO L290 TraceCheckUtils]: 11: Hoare triple {10409#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {10409#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,326 INFO L290 TraceCheckUtils]: 12: Hoare triple {10409#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10410#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:39:54,327 INFO L290 TraceCheckUtils]: 13: Hoare triple {10410#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,327 INFO L290 TraceCheckUtils]: 14: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,328 INFO L290 TraceCheckUtils]: 15: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet18#1; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,328 INFO L290 TraceCheckUtils]: 16: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,328 INFO L290 TraceCheckUtils]: 17: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,329 INFO L290 TraceCheckUtils]: 18: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_~i~1#1 := 0; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,329 INFO L290 TraceCheckUtils]: 19: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,330 INFO L290 TraceCheckUtils]: 20: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,330 INFO L290 TraceCheckUtils]: 21: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,330 INFO L290 TraceCheckUtils]: 22: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,331 INFO L290 TraceCheckUtils]: 23: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,331 INFO L290 TraceCheckUtils]: 24: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,331 INFO L290 TraceCheckUtils]: 25: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,332 INFO L290 TraceCheckUtils]: 26: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,332 INFO L290 TraceCheckUtils]: 27: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,333 INFO L290 TraceCheckUtils]: 28: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,333 INFO L290 TraceCheckUtils]: 29: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,333 INFO L290 TraceCheckUtils]: 30: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,334 INFO L290 TraceCheckUtils]: 31: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:54,334 INFO L290 TraceCheckUtils]: 32: Hoare triple {10411#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {10412#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,335 INFO L290 TraceCheckUtils]: 33: Hoare triple {10412#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {10412#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:54,335 INFO L290 TraceCheckUtils]: 34: Hoare triple {10412#(and (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,336 INFO L290 TraceCheckUtils]: 35: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(0 == cstrncmp_~n#1); {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,336 INFO L290 TraceCheckUtils]: 36: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,337 INFO L290 TraceCheckUtils]: 37: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,337 INFO L290 TraceCheckUtils]: 38: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,337 INFO L290 TraceCheckUtils]: 39: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,338 INFO L290 TraceCheckUtils]: 40: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,338 INFO L290 TraceCheckUtils]: 41: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,339 INFO L290 TraceCheckUtils]: 42: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,339 INFO L290 TraceCheckUtils]: 43: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,339 INFO L290 TraceCheckUtils]: 44: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,340 INFO L290 TraceCheckUtils]: 45: Hoare triple {10413#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,340 INFO L290 TraceCheckUtils]: 46: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,341 INFO L290 TraceCheckUtils]: 47: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,341 INFO L290 TraceCheckUtils]: 48: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,342 INFO L290 TraceCheckUtils]: 49: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,342 INFO L290 TraceCheckUtils]: 50: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,343 INFO L290 TraceCheckUtils]: 51: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,343 INFO L290 TraceCheckUtils]: 52: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,343 INFO L290 TraceCheckUtils]: 53: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,344 INFO L290 TraceCheckUtils]: 54: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,344 INFO L290 TraceCheckUtils]: 55: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,345 INFO L290 TraceCheckUtils]: 56: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,345 INFO L290 TraceCheckUtils]: 57: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,347 INFO L290 TraceCheckUtils]: 58: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,347 INFO L290 TraceCheckUtils]: 59: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,347 INFO L290 TraceCheckUtils]: 60: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,348 INFO L290 TraceCheckUtils]: 61: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,348 INFO L290 TraceCheckUtils]: 62: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,349 INFO L290 TraceCheckUtils]: 63: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,349 INFO L290 TraceCheckUtils]: 64: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,350 INFO L290 TraceCheckUtils]: 65: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,350 INFO L290 TraceCheckUtils]: 66: Hoare triple {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,351 INFO L290 TraceCheckUtils]: 67: Hoare triple {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,351 INFO L290 TraceCheckUtils]: 68: Hoare triple {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {10407#false} is VALID [2022-02-20 23:39:54,351 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 1 proven. 53 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:39:54,351 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:54,352 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1257535778] [2022-02-20 23:39:54,352 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1257535778] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:54,352 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2045893263] [2022-02-20 23:39:54,352 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:39:54,352 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:54,352 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:54,353 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:39:54,354 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:39:54,471 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:39:54,471 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:54,473 INFO L263 TraceCheckSpWp]: Trace formula consists of 298 conjuncts, 27 conjunts are in the unsatisfiable core [2022-02-20 23:39:54,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:54,490 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:54,977 INFO L290 TraceCheckUtils]: 0: Hoare triple {10406#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10406#true} is VALID [2022-02-20 23:39:54,977 INFO L290 TraceCheckUtils]: 1: Hoare triple {10406#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {10406#true} is VALID [2022-02-20 23:39:54,977 INFO L290 TraceCheckUtils]: 2: Hoare triple {10406#true} assume !(main_~length1~0#1 < 1); {10406#true} is VALID [2022-02-20 23:39:54,977 INFO L290 TraceCheckUtils]: 3: Hoare triple {10406#true} assume !(main_~length2~0#1 < 1); {10406#true} is VALID [2022-02-20 23:39:54,978 INFO L290 TraceCheckUtils]: 4: Hoare triple {10406#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,978 INFO L290 TraceCheckUtils]: 5: Hoare triple {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,978 INFO L290 TraceCheckUtils]: 6: Hoare triple {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,979 INFO L290 TraceCheckUtils]: 7: Hoare triple {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet18#1; {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,979 INFO L290 TraceCheckUtils]: 8: Hoare triple {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,979 INFO L290 TraceCheckUtils]: 9: Hoare triple {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,980 INFO L290 TraceCheckUtils]: 10: Hoare triple {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,980 INFO L290 TraceCheckUtils]: 11: Hoare triple {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet18#1; {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,980 INFO L290 TraceCheckUtils]: 12: Hoare triple {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10458#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:54,981 INFO L290 TraceCheckUtils]: 13: Hoare triple {10458#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,981 INFO L290 TraceCheckUtils]: 14: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet18#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,982 INFO L290 TraceCheckUtils]: 16: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,982 INFO L290 TraceCheckUtils]: 17: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,982 INFO L290 TraceCheckUtils]: 18: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_~i~1#1 := 0; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,982 INFO L290 TraceCheckUtils]: 19: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,983 INFO L290 TraceCheckUtils]: 20: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,983 INFO L290 TraceCheckUtils]: 21: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,983 INFO L290 TraceCheckUtils]: 22: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,984 INFO L290 TraceCheckUtils]: 23: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,984 INFO L290 TraceCheckUtils]: 24: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,984 INFO L290 TraceCheckUtils]: 25: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,985 INFO L290 TraceCheckUtils]: 26: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,985 INFO L290 TraceCheckUtils]: 27: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,985 INFO L290 TraceCheckUtils]: 28: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,985 INFO L290 TraceCheckUtils]: 29: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,986 INFO L290 TraceCheckUtils]: 30: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,986 INFO L290 TraceCheckUtils]: 31: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:54,987 INFO L290 TraceCheckUtils]: 32: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {10520#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:39:54,987 INFO L290 TraceCheckUtils]: 33: Hoare triple {10520#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {10520#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:39:54,987 INFO L290 TraceCheckUtils]: 34: Hoare triple {10520#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {10527#(< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} is VALID [2022-02-20 23:39:54,988 INFO L290 TraceCheckUtils]: 35: Hoare triple {10527#(< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} assume !(0 == cstrncmp_~n#1); {10527#(< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} is VALID [2022-02-20 23:39:54,988 INFO L290 TraceCheckUtils]: 36: Hoare triple {10527#(< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10527#(< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} is VALID [2022-02-20 23:39:54,989 INFO L290 TraceCheckUtils]: 37: Hoare triple {10527#(< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} assume cstrncmp_#t~short5#1; {10527#(< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} is VALID [2022-02-20 23:39:54,989 INFO L290 TraceCheckUtils]: 38: Hoare triple {10527#(< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,989 INFO L290 TraceCheckUtils]: 39: Hoare triple {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,990 INFO L290 TraceCheckUtils]: 40: Hoare triple {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,990 INFO L290 TraceCheckUtils]: 41: Hoare triple {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,991 INFO L290 TraceCheckUtils]: 42: Hoare triple {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1; {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,991 INFO L290 TraceCheckUtils]: 43: Hoare triple {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,992 INFO L290 TraceCheckUtils]: 44: Hoare triple {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:54,992 INFO L290 TraceCheckUtils]: 45: Hoare triple {10540#(and (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,993 INFO L290 TraceCheckUtils]: 46: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,993 INFO L290 TraceCheckUtils]: 47: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,994 INFO L290 TraceCheckUtils]: 48: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,994 INFO L290 TraceCheckUtils]: 49: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,995 INFO L290 TraceCheckUtils]: 50: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,995 INFO L290 TraceCheckUtils]: 51: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,996 INFO L290 TraceCheckUtils]: 52: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,996 INFO L290 TraceCheckUtils]: 53: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,997 INFO L290 TraceCheckUtils]: 54: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,997 INFO L290 TraceCheckUtils]: 55: Hoare triple {10414#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,998 INFO L290 TraceCheckUtils]: 56: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,998 INFO L290 TraceCheckUtils]: 57: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,998 INFO L290 TraceCheckUtils]: 58: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,999 INFO L290 TraceCheckUtils]: 59: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:54,999 INFO L290 TraceCheckUtils]: 60: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,000 INFO L290 TraceCheckUtils]: 61: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,000 INFO L290 TraceCheckUtils]: 62: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,001 INFO L290 TraceCheckUtils]: 63: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,001 INFO L290 TraceCheckUtils]: 64: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,002 INFO L290 TraceCheckUtils]: 65: Hoare triple {10415#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:55,002 INFO L290 TraceCheckUtils]: 66: Hoare triple {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:55,002 INFO L290 TraceCheckUtils]: 67: Hoare triple {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:55,003 INFO L290 TraceCheckUtils]: 68: Hoare triple {10416#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {10407#false} is VALID [2022-02-20 23:39:55,003 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 6 proven. 48 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:39:55,003 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:55,394 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:39:55,492 INFO L290 TraceCheckUtils]: 68: Hoare triple {10631#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {10407#false} is VALID [2022-02-20 23:39:55,492 INFO L290 TraceCheckUtils]: 67: Hoare triple {10631#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {10631#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:55,492 INFO L290 TraceCheckUtils]: 66: Hoare triple {10631#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10631#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:55,493 INFO L290 TraceCheckUtils]: 65: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10631#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:39:55,493 INFO L290 TraceCheckUtils]: 64: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,494 INFO L290 TraceCheckUtils]: 63: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,494 INFO L290 TraceCheckUtils]: 62: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !cstrncmp_#t~short7#1; {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,494 INFO L290 TraceCheckUtils]: 61: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,495 INFO L290 TraceCheckUtils]: 60: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,495 INFO L290 TraceCheckUtils]: 59: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,495 INFO L290 TraceCheckUtils]: 58: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,496 INFO L290 TraceCheckUtils]: 57: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume cstrncmp_#t~short5#1; {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,496 INFO L290 TraceCheckUtils]: 56: Hoare triple {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,497 INFO L290 TraceCheckUtils]: 55: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10641#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:39:55,497 INFO L290 TraceCheckUtils]: 54: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,497 INFO L290 TraceCheckUtils]: 53: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,498 INFO L290 TraceCheckUtils]: 52: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,498 INFO L290 TraceCheckUtils]: 51: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,498 INFO L290 TraceCheckUtils]: 50: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,499 INFO L290 TraceCheckUtils]: 49: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,499 INFO L290 TraceCheckUtils]: 48: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,499 INFO L290 TraceCheckUtils]: 47: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,500 INFO L290 TraceCheckUtils]: 46: Hoare triple {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,500 INFO L290 TraceCheckUtils]: 45: Hoare triple {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {10672#(and (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:39:55,501 INFO L290 TraceCheckUtils]: 44: Hoare triple {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,501 INFO L290 TraceCheckUtils]: 43: Hoare triple {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,501 INFO L290 TraceCheckUtils]: 42: Hoare triple {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} assume !cstrncmp_#t~short7#1; {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,502 INFO L290 TraceCheckUtils]: 41: Hoare triple {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,502 INFO L290 TraceCheckUtils]: 40: Hoare triple {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,502 INFO L290 TraceCheckUtils]: 39: Hoare triple {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,503 INFO L290 TraceCheckUtils]: 38: Hoare triple {10725#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {10703#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,503 INFO L290 TraceCheckUtils]: 37: Hoare triple {10725#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} assume cstrncmp_#t~short5#1; {10725#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,503 INFO L290 TraceCheckUtils]: 36: Hoare triple {10725#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {10725#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,504 INFO L290 TraceCheckUtils]: 35: Hoare triple {10725#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} assume !(0 == cstrncmp_~n#1); {10725#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,504 INFO L290 TraceCheckUtils]: 34: Hoare triple {10738#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {10725#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:39:55,504 INFO L290 TraceCheckUtils]: 33: Hoare triple {10738#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {10738#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:55,505 INFO L290 TraceCheckUtils]: 32: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {10738#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:39:55,505 INFO L290 TraceCheckUtils]: 31: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,505 INFO L290 TraceCheckUtils]: 30: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,506 INFO L290 TraceCheckUtils]: 29: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,506 INFO L290 TraceCheckUtils]: 28: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,506 INFO L290 TraceCheckUtils]: 27: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,506 INFO L290 TraceCheckUtils]: 26: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,506 INFO L290 TraceCheckUtils]: 25: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,507 INFO L290 TraceCheckUtils]: 24: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,507 INFO L290 TraceCheckUtils]: 23: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,507 INFO L290 TraceCheckUtils]: 22: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,507 INFO L290 TraceCheckUtils]: 21: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet20#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,508 INFO L290 TraceCheckUtils]: 20: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,508 INFO L290 TraceCheckUtils]: 19: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,508 INFO L290 TraceCheckUtils]: 18: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_~i~1#1 := 0; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,508 INFO L290 TraceCheckUtils]: 17: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,509 INFO L290 TraceCheckUtils]: 16: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,509 INFO L290 TraceCheckUtils]: 15: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet18#1; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,509 INFO L290 TraceCheckUtils]: 14: Hoare triple {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,509 INFO L290 TraceCheckUtils]: 13: Hoare triple {10458#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10462#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:55,510 INFO L290 TraceCheckUtils]: 12: Hoare triple {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10458#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,510 INFO L290 TraceCheckUtils]: 11: Hoare triple {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet18#1; {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,510 INFO L290 TraceCheckUtils]: 10: Hoare triple {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,510 INFO L290 TraceCheckUtils]: 9: Hoare triple {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,511 INFO L290 TraceCheckUtils]: 8: Hoare triple {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {10445#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,511 INFO L290 TraceCheckUtils]: 7: Hoare triple {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet18#1; {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,511 INFO L290 TraceCheckUtils]: 6: Hoare triple {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,511 INFO L290 TraceCheckUtils]: 5: Hoare triple {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,512 INFO L290 TraceCheckUtils]: 4: Hoare triple {10406#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {10432#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:55,512 INFO L290 TraceCheckUtils]: 3: Hoare triple {10406#true} assume !(main_~length2~0#1 < 1); {10406#true} is VALID [2022-02-20 23:39:55,512 INFO L290 TraceCheckUtils]: 2: Hoare triple {10406#true} assume !(main_~length1~0#1 < 1); {10406#true} is VALID [2022-02-20 23:39:55,512 INFO L290 TraceCheckUtils]: 1: Hoare triple {10406#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {10406#true} is VALID [2022-02-20 23:39:55,512 INFO L290 TraceCheckUtils]: 0: Hoare triple {10406#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10406#true} is VALID [2022-02-20 23:39:55,513 INFO L134 CoverageAnalysis]: Checked inductivity of 69 backedges. 6 proven. 48 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:39:55,513 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2045893263] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:55,513 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:55,513 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 11, 11] total 23 [2022-02-20 23:39:55,513 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2065106281] [2022-02-20 23:39:55,513 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:55,514 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 23 states have (on average 5.739130434782608) internal successors, (132), 24 states have internal predecessors, (132), 0 states have call successors, (0), 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 69 [2022-02-20 23:39:55,514 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:55,514 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 24 states, 23 states have (on average 5.739130434782608) internal successors, (132), 24 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:55,586 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:55,586 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-02-20 23:39:55,587 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:55,587 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-02-20 23:39:55,588 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=81, Invalid=471, Unknown=0, NotChecked=0, Total=552 [2022-02-20 23:39:55,588 INFO L87 Difference]: Start difference. First operand 78 states and 80 transitions. Second operand has 24 states, 23 states have (on average 5.739130434782608) internal successors, (132), 24 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:56,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:56,203 INFO L93 Difference]: Finished difference Result 100 states and 102 transitions. [2022-02-20 23:39:56,203 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:39:56,204 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 23 states have (on average 5.739130434782608) internal successors, (132), 24 states have internal predecessors, (132), 0 states have call successors, (0), 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 69 [2022-02-20 23:39:56,204 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:56,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 23 states have (on average 5.739130434782608) internal successors, (132), 24 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:56,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 95 transitions. [2022-02-20 23:39:56,205 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 23 states have (on average 5.739130434782608) internal successors, (132), 24 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:56,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 95 transitions. [2022-02-20 23:39:56,205 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 95 transitions. [2022-02-20 23:39:56,253 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:56,254 INFO L225 Difference]: With dead ends: 100 [2022-02-20 23:39:56,254 INFO L226 Difference]: Without dead ends: 100 [2022-02-20 23:39:56,255 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 153 GetRequests, 122 SyntacticMatches, 2 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 160 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=195, Invalid=735, Unknown=0, NotChecked=0, Total=930 [2022-02-20 23:39:56,257 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 530 mSDsluCounter, 233 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 530 SdHoareTripleChecker+Valid, 275 SdHoareTripleChecker+Invalid, 325 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:56,257 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [530 Valid, 275 Invalid, 325 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 280 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:39:56,257 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-02-20 23:39:56,272 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 89. [2022-02-20 23:39:56,272 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:56,272 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 89 states, 85 states have (on average 1.0823529411764705) internal successors, (92), 88 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:56,272 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 89 states, 85 states have (on average 1.0823529411764705) internal successors, (92), 88 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:56,273 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 89 states, 85 states have (on average 1.0823529411764705) internal successors, (92), 88 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:56,274 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:56,274 INFO L93 Difference]: Finished difference Result 100 states and 102 transitions. [2022-02-20 23:39:56,274 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 102 transitions. [2022-02-20 23:39:56,274 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:56,274 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:56,274 INFO L74 IsIncluded]: Start isIncluded. First operand has 89 states, 85 states have (on average 1.0823529411764705) internal successors, (92), 88 states have internal predecessors, (92), 0 states have call successors, (0), 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 100 states. [2022-02-20 23:39:56,274 INFO L87 Difference]: Start difference. First operand has 89 states, 85 states have (on average 1.0823529411764705) internal successors, (92), 88 states have internal predecessors, (92), 0 states have call successors, (0), 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 100 states. [2022-02-20 23:39:56,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:56,275 INFO L93 Difference]: Finished difference Result 100 states and 102 transitions. [2022-02-20 23:39:56,276 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 102 transitions. [2022-02-20 23:39:56,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:56,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:56,276 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:56,276 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:56,276 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 89 states, 85 states have (on average 1.0823529411764705) internal successors, (92), 88 states have internal predecessors, (92), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:56,277 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 89 states to 89 states and 92 transitions. [2022-02-20 23:39:56,277 INFO L78 Accepts]: Start accepts. Automaton has 89 states and 92 transitions. Word has length 69 [2022-02-20 23:39:56,277 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:56,277 INFO L470 AbstractCegarLoop]: Abstraction has 89 states and 92 transitions. [2022-02-20 23:39:56,277 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 23 states have (on average 5.739130434782608) internal successors, (132), 24 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:56,278 INFO L276 IsEmpty]: Start isEmpty. Operand 89 states and 92 transitions. [2022-02-20 23:39:56,279 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2022-02-20 23:39:56,279 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:56,279 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:56,296 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:39:56,495 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,SelfDestructingSolverStorable27 [2022-02-20 23:39:56,496 INFO L402 AbstractCegarLoop]: === Iteration 29 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:56,496 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:56,496 INFO L85 PathProgramCache]: Analyzing trace with hash 1806012818, now seen corresponding path program 3 times [2022-02-20 23:39:56,496 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:56,496 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [661072022] [2022-02-20 23:39:56,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:56,496 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:56,537 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:56,665 INFO L290 TraceCheckUtils]: 0: Hoare triple {11243#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {11243#true} is VALID [2022-02-20 23:39:56,665 INFO L290 TraceCheckUtils]: 1: Hoare triple {11243#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {11243#true} is VALID [2022-02-20 23:39:56,665 INFO L290 TraceCheckUtils]: 2: Hoare triple {11243#true} assume !(main_~length1~0#1 < 1); {11243#true} is VALID [2022-02-20 23:39:56,665 INFO L290 TraceCheckUtils]: 3: Hoare triple {11243#true} assume !(main_~length2~0#1 < 1); {11243#true} is VALID [2022-02-20 23:39:56,666 INFO L290 TraceCheckUtils]: 4: Hoare triple {11243#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,666 INFO L290 TraceCheckUtils]: 5: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,667 INFO L290 TraceCheckUtils]: 6: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,667 INFO L290 TraceCheckUtils]: 7: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,668 INFO L290 TraceCheckUtils]: 8: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,668 INFO L290 TraceCheckUtils]: 9: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,668 INFO L290 TraceCheckUtils]: 10: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,669 INFO L290 TraceCheckUtils]: 11: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,669 INFO L290 TraceCheckUtils]: 12: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,669 INFO L290 TraceCheckUtils]: 13: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,670 INFO L290 TraceCheckUtils]: 14: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,670 INFO L290 TraceCheckUtils]: 15: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,671 INFO L290 TraceCheckUtils]: 16: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,671 INFO L290 TraceCheckUtils]: 17: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,671 INFO L290 TraceCheckUtils]: 18: Hoare triple {11245#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_~i~1#1 := 0; {11246#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,672 INFO L290 TraceCheckUtils]: 19: Hoare triple {11246#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11246#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,672 INFO L290 TraceCheckUtils]: 20: Hoare triple {11246#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11246#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,673 INFO L290 TraceCheckUtils]: 21: Hoare triple {11246#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {11246#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,673 INFO L290 TraceCheckUtils]: 22: Hoare triple {11246#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11247#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,673 INFO L290 TraceCheckUtils]: 23: Hoare triple {11247#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11247#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,674 INFO L290 TraceCheckUtils]: 24: Hoare triple {11247#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11247#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,674 INFO L290 TraceCheckUtils]: 25: Hoare triple {11247#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {11247#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,675 INFO L290 TraceCheckUtils]: 26: Hoare triple {11247#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11248#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,675 INFO L290 TraceCheckUtils]: 27: Hoare triple {11248#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,676 INFO L290 TraceCheckUtils]: 28: Hoare triple {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,676 INFO L290 TraceCheckUtils]: 29: Hoare triple {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,676 INFO L290 TraceCheckUtils]: 30: Hoare triple {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,677 INFO L290 TraceCheckUtils]: 31: Hoare triple {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,677 INFO L290 TraceCheckUtils]: 32: Hoare triple {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,678 INFO L290 TraceCheckUtils]: 33: Hoare triple {11249#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {11250#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:56,678 INFO L290 TraceCheckUtils]: 34: Hoare triple {11250#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,679 INFO L290 TraceCheckUtils]: 35: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(0 == cstrncmp_~n#1); {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,679 INFO L290 TraceCheckUtils]: 36: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,679 INFO L290 TraceCheckUtils]: 37: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,680 INFO L290 TraceCheckUtils]: 38: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,680 INFO L290 TraceCheckUtils]: 39: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,681 INFO L290 TraceCheckUtils]: 40: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,681 INFO L290 TraceCheckUtils]: 41: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,681 INFO L290 TraceCheckUtils]: 42: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,682 INFO L290 TraceCheckUtils]: 43: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,682 INFO L290 TraceCheckUtils]: 44: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,683 INFO L290 TraceCheckUtils]: 45: Hoare triple {11251#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,683 INFO L290 TraceCheckUtils]: 46: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,684 INFO L290 TraceCheckUtils]: 47: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,684 INFO L290 TraceCheckUtils]: 48: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,684 INFO L290 TraceCheckUtils]: 49: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,685 INFO L290 TraceCheckUtils]: 50: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,685 INFO L290 TraceCheckUtils]: 51: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,686 INFO L290 TraceCheckUtils]: 52: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,686 INFO L290 TraceCheckUtils]: 53: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,686 INFO L290 TraceCheckUtils]: 54: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,687 INFO L290 TraceCheckUtils]: 55: Hoare triple {11252#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,687 INFO L290 TraceCheckUtils]: 56: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,688 INFO L290 TraceCheckUtils]: 57: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,688 INFO L290 TraceCheckUtils]: 58: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,689 INFO L290 TraceCheckUtils]: 59: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,689 INFO L290 TraceCheckUtils]: 60: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,689 INFO L290 TraceCheckUtils]: 61: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,690 INFO L290 TraceCheckUtils]: 62: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,690 INFO L290 TraceCheckUtils]: 63: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,691 INFO L290 TraceCheckUtils]: 64: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,691 INFO L290 TraceCheckUtils]: 65: Hoare triple {11253#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11254#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,692 INFO L290 TraceCheckUtils]: 66: Hoare triple {11254#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11254#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,692 INFO L290 TraceCheckUtils]: 67: Hoare triple {11254#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {11254#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,692 INFO L290 TraceCheckUtils]: 68: Hoare triple {11254#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11254#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:56,693 INFO L290 TraceCheckUtils]: 69: Hoare triple {11254#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {11244#false} is VALID [2022-02-20 23:39:56,693 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 1 proven. 56 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:39:56,693 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:56,693 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [661072022] [2022-02-20 23:39:56,694 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [661072022] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:56,694 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [901510339] [2022-02-20 23:39:56,694 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:39:56,694 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:56,694 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:56,695 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:39:56,748 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:39:56,831 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 4 check-sat command(s) [2022-02-20 23:39:56,831 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:56,833 INFO L263 TraceCheckSpWp]: Trace formula consists of 304 conjuncts, 25 conjunts are in the unsatisfiable core [2022-02-20 23:39:56,849 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:56,851 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:57,258 INFO L290 TraceCheckUtils]: 0: Hoare triple {11243#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {11243#true} is VALID [2022-02-20 23:39:57,258 INFO L290 TraceCheckUtils]: 1: Hoare triple {11243#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {11243#true} assume !(main_~length1~0#1 < 1); {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 3: Hoare triple {11243#true} assume !(main_~length2~0#1 < 1); {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 4: Hoare triple {11243#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 5: Hoare triple {11243#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 6: Hoare triple {11243#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 7: Hoare triple {11243#true} havoc main_#t~nondet18#1; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 8: Hoare triple {11243#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 9: Hoare triple {11243#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 10: Hoare triple {11243#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 11: Hoare triple {11243#true} havoc main_#t~nondet18#1; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {11243#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 13: Hoare triple {11243#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 14: Hoare triple {11243#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 15: Hoare triple {11243#true} havoc main_#t~nondet18#1; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 16: Hoare triple {11243#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11243#true} is VALID [2022-02-20 23:39:57,259 INFO L290 TraceCheckUtils]: 17: Hoare triple {11243#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {11243#true} is VALID [2022-02-20 23:39:57,260 INFO L290 TraceCheckUtils]: 18: Hoare triple {11243#true} main_~i~1#1 := 0; {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,260 INFO L290 TraceCheckUtils]: 19: Hoare triple {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,260 INFO L290 TraceCheckUtils]: 20: Hoare triple {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,261 INFO L290 TraceCheckUtils]: 21: Hoare triple {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,261 INFO L290 TraceCheckUtils]: 22: Hoare triple {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,261 INFO L290 TraceCheckUtils]: 23: Hoare triple {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,262 INFO L290 TraceCheckUtils]: 24: Hoare triple {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,262 INFO L290 TraceCheckUtils]: 25: Hoare triple {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,262 INFO L290 TraceCheckUtils]: 26: Hoare triple {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11338#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,263 INFO L290 TraceCheckUtils]: 27: Hoare triple {11338#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,263 INFO L290 TraceCheckUtils]: 28: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,263 INFO L290 TraceCheckUtils]: 29: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet20#1; {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,264 INFO L290 TraceCheckUtils]: 30: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,264 INFO L290 TraceCheckUtils]: 31: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,264 INFO L290 TraceCheckUtils]: 32: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,265 INFO L290 TraceCheckUtils]: 33: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {11361#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} is VALID [2022-02-20 23:39:57,265 INFO L290 TraceCheckUtils]: 34: Hoare triple {11361#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,266 INFO L290 TraceCheckUtils]: 35: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !(0 == cstrncmp_~n#1); {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,266 INFO L290 TraceCheckUtils]: 36: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,266 INFO L290 TraceCheckUtils]: 37: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume cstrncmp_#t~short5#1; {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,267 INFO L290 TraceCheckUtils]: 38: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,267 INFO L290 TraceCheckUtils]: 39: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,268 INFO L290 TraceCheckUtils]: 40: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,268 INFO L290 TraceCheckUtils]: 41: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,268 INFO L290 TraceCheckUtils]: 42: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !cstrncmp_#t~short7#1; {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,269 INFO L290 TraceCheckUtils]: 43: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,269 INFO L290 TraceCheckUtils]: 44: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,270 INFO L290 TraceCheckUtils]: 45: Hoare triple {11365#(< (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,270 INFO L290 TraceCheckUtils]: 46: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,270 INFO L290 TraceCheckUtils]: 47: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume cstrncmp_#t~short5#1; {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,271 INFO L290 TraceCheckUtils]: 48: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,271 INFO L290 TraceCheckUtils]: 49: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,271 INFO L290 TraceCheckUtils]: 50: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,272 INFO L290 TraceCheckUtils]: 51: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,272 INFO L290 TraceCheckUtils]: 52: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !cstrncmp_#t~short7#1; {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,272 INFO L290 TraceCheckUtils]: 53: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,273 INFO L290 TraceCheckUtils]: 54: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,273 INFO L290 TraceCheckUtils]: 55: Hoare triple {11399#(< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11430#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,274 INFO L290 TraceCheckUtils]: 56: Hoare triple {11430#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11430#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,274 INFO L290 TraceCheckUtils]: 57: Hoare triple {11430#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume cstrncmp_#t~short5#1; {11430#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,274 INFO L290 TraceCheckUtils]: 58: Hoare triple {11430#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11430#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:39:57,275 INFO L290 TraceCheckUtils]: 59: Hoare triple {11430#(< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,275 INFO L290 TraceCheckUtils]: 60: Hoare triple {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,275 INFO L290 TraceCheckUtils]: 61: Hoare triple {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,276 INFO L290 TraceCheckUtils]: 62: Hoare triple {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1; {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,276 INFO L290 TraceCheckUtils]: 63: Hoare triple {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,277 INFO L290 TraceCheckUtils]: 64: Hoare triple {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,277 INFO L290 TraceCheckUtils]: 65: Hoare triple {11443#(and (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11462#(and (< |ULTIMATE.start_cstrncmp_~s2#1.offset| (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,278 INFO L290 TraceCheckUtils]: 66: Hoare triple {11462#(and (< |ULTIMATE.start_cstrncmp_~s2#1.offset| (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11462#(and (< |ULTIMATE.start_cstrncmp_~s2#1.offset| (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,278 INFO L290 TraceCheckUtils]: 67: Hoare triple {11462#(and (< |ULTIMATE.start_cstrncmp_~s2#1.offset| (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume cstrncmp_#t~short5#1; {11462#(and (< |ULTIMATE.start_cstrncmp_~s2#1.offset| (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,278 INFO L290 TraceCheckUtils]: 68: Hoare triple {11462#(and (< |ULTIMATE.start_cstrncmp_~s2#1.offset| (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11462#(and (< |ULTIMATE.start_cstrncmp_~s2#1.offset| (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,279 INFO L290 TraceCheckUtils]: 69: Hoare triple {11462#(and (< |ULTIMATE.start_cstrncmp_~s2#1.offset| (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {11244#false} is VALID [2022-02-20 23:39:57,279 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 6 proven. 51 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:39:57,279 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:57,717 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:39:57,813 INFO L290 TraceCheckUtils]: 69: Hoare triple {11475#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {11244#false} is VALID [2022-02-20 23:39:57,814 INFO L290 TraceCheckUtils]: 68: Hoare triple {11475#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11475#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,814 INFO L290 TraceCheckUtils]: 67: Hoare triple {11475#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume cstrncmp_#t~short5#1; {11475#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,815 INFO L290 TraceCheckUtils]: 66: Hoare triple {11475#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11475#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,815 INFO L290 TraceCheckUtils]: 65: Hoare triple {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11475#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:39:57,816 INFO L290 TraceCheckUtils]: 64: Hoare triple {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:57,816 INFO L290 TraceCheckUtils]: 63: Hoare triple {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:57,817 INFO L290 TraceCheckUtils]: 62: Hoare triple {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !cstrncmp_#t~short7#1; {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:57,817 INFO L290 TraceCheckUtils]: 61: Hoare triple {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:57,818 INFO L290 TraceCheckUtils]: 60: Hoare triple {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:57,818 INFO L290 TraceCheckUtils]: 59: Hoare triple {11507#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11488#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:39:57,818 INFO L290 TraceCheckUtils]: 58: Hoare triple {11507#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11507#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,819 INFO L290 TraceCheckUtils]: 57: Hoare triple {11507#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {11507#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,819 INFO L290 TraceCheckUtils]: 56: Hoare triple {11507#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11507#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,820 INFO L290 TraceCheckUtils]: 55: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11507#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,820 INFO L290 TraceCheckUtils]: 54: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,821 INFO L290 TraceCheckUtils]: 53: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,821 INFO L290 TraceCheckUtils]: 52: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,821 INFO L290 TraceCheckUtils]: 51: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,822 INFO L290 TraceCheckUtils]: 50: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,822 INFO L290 TraceCheckUtils]: 49: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,823 INFO L290 TraceCheckUtils]: 48: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,823 INFO L290 TraceCheckUtils]: 47: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,823 INFO L290 TraceCheckUtils]: 46: Hoare triple {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,824 INFO L290 TraceCheckUtils]: 45: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {11520#(or (< (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,824 INFO L290 TraceCheckUtils]: 44: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,825 INFO L290 TraceCheckUtils]: 43: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,825 INFO L290 TraceCheckUtils]: 42: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,826 INFO L290 TraceCheckUtils]: 41: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,826 INFO L290 TraceCheckUtils]: 40: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,826 INFO L290 TraceCheckUtils]: 39: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,827 INFO L290 TraceCheckUtils]: 38: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,827 INFO L290 TraceCheckUtils]: 37: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,828 INFO L290 TraceCheckUtils]: 36: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,828 INFO L290 TraceCheckUtils]: 35: Hoare triple {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(0 == cstrncmp_~n#1); {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,829 INFO L290 TraceCheckUtils]: 34: Hoare triple {11585#(or (< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {11551#(or (< (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) 0) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:39:57,829 INFO L290 TraceCheckUtils]: 33: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {11585#(or (< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:39:57,830 INFO L290 TraceCheckUtils]: 32: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,830 INFO L290 TraceCheckUtils]: 31: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,830 INFO L290 TraceCheckUtils]: 30: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,830 INFO L290 TraceCheckUtils]: 29: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet20#1; {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,831 INFO L290 TraceCheckUtils]: 28: Hoare triple {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,831 INFO L290 TraceCheckUtils]: 27: Hoare triple {11338#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11342#(< 3 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:57,831 INFO L290 TraceCheckUtils]: 26: Hoare triple {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11338#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,832 INFO L290 TraceCheckUtils]: 25: Hoare triple {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,832 INFO L290 TraceCheckUtils]: 24: Hoare triple {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,832 INFO L290 TraceCheckUtils]: 23: Hoare triple {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,833 INFO L290 TraceCheckUtils]: 22: Hoare triple {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {11325#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,833 INFO L290 TraceCheckUtils]: 21: Hoare triple {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,833 INFO L290 TraceCheckUtils]: 20: Hoare triple {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 19: Hoare triple {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 18: Hoare triple {11243#true} main_~i~1#1 := 0; {11312#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 17: Hoare triple {11243#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 16: Hoare triple {11243#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 15: Hoare triple {11243#true} havoc main_#t~nondet18#1; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 14: Hoare triple {11243#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {11243#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 12: Hoare triple {11243#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 11: Hoare triple {11243#true} havoc main_#t~nondet18#1; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 10: Hoare triple {11243#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 9: Hoare triple {11243#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 8: Hoare triple {11243#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 7: Hoare triple {11243#true} havoc main_#t~nondet18#1; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 6: Hoare triple {11243#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 5: Hoare triple {11243#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 4: Hoare triple {11243#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {11243#true} is VALID [2022-02-20 23:39:57,834 INFO L290 TraceCheckUtils]: 3: Hoare triple {11243#true} assume !(main_~length2~0#1 < 1); {11243#true} is VALID [2022-02-20 23:39:57,835 INFO L290 TraceCheckUtils]: 2: Hoare triple {11243#true} assume !(main_~length1~0#1 < 1); {11243#true} is VALID [2022-02-20 23:39:57,835 INFO L290 TraceCheckUtils]: 1: Hoare triple {11243#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {11243#true} is VALID [2022-02-20 23:39:57,835 INFO L290 TraceCheckUtils]: 0: Hoare triple {11243#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {11243#true} is VALID [2022-02-20 23:39:57,835 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 6 proven. 51 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:39:57,835 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [901510339] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:57,835 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:57,835 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11, 11] total 27 [2022-02-20 23:39:57,835 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [330763805] [2022-02-20 23:39:57,835 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:57,836 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 5.814814814814815) internal successors, (157), 28 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 70 [2022-02-20 23:39:57,836 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:57,836 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 28 states, 27 states have (on average 5.814814814814815) internal successors, (157), 28 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:57,946 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:57,947 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-02-20 23:39:57,947 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:57,947 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-02-20 23:39:57,947 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=118, Invalid=638, Unknown=0, NotChecked=0, Total=756 [2022-02-20 23:39:57,947 INFO L87 Difference]: Start difference. First operand 89 states and 92 transitions. Second operand has 28 states, 27 states have (on average 5.814814814814815) internal successors, (157), 28 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:58,869 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:58,869 INFO L93 Difference]: Finished difference Result 98 states and 100 transitions. [2022-02-20 23:39:58,869 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:39:58,869 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 5.814814814814815) internal successors, (157), 28 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 70 [2022-02-20 23:39:58,869 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:58,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 5.814814814814815) internal successors, (157), 28 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:58,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 93 transitions. [2022-02-20 23:39:58,870 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 5.814814814814815) internal successors, (157), 28 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:58,870 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 93 transitions. [2022-02-20 23:39:58,871 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 93 transitions. [2022-02-20 23:39:58,940 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:58,941 INFO L225 Difference]: With dead ends: 98 [2022-02-20 23:39:58,941 INFO L226 Difference]: Without dead ends: 94 [2022-02-20 23:39:58,941 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 155 GetRequests, 122 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 288 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=235, Invalid=887, Unknown=0, NotChecked=0, Total=1122 [2022-02-20 23:39:58,941 INFO L933 BasicCegarLoop]: 41 mSDtfsCounter, 542 mSDsluCounter, 309 mSDsCounter, 0 mSdLazyCounter, 345 mSolverCounterSat, 54 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 542 SdHoareTripleChecker+Valid, 350 SdHoareTripleChecker+Invalid, 399 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 54 IncrementalHoareTripleChecker+Valid, 345 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:58,941 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [542 Valid, 350 Invalid, 399 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [54 Valid, 345 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:39:58,942 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 94 states. [2022-02-20 23:39:58,942 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 94 to 88. [2022-02-20 23:39:58,943 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:58,943 INFO L82 GeneralOperation]: Start isEquivalent. First operand 94 states. Second operand has 88 states, 84 states have (on average 1.0714285714285714) internal successors, (90), 87 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:58,943 INFO L74 IsIncluded]: Start isIncluded. First operand 94 states. Second operand has 88 states, 84 states have (on average 1.0714285714285714) internal successors, (90), 87 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:58,943 INFO L87 Difference]: Start difference. First operand 94 states. Second operand has 88 states, 84 states have (on average 1.0714285714285714) internal successors, (90), 87 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:58,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:58,943 INFO L93 Difference]: Finished difference Result 94 states and 96 transitions. [2022-02-20 23:39:58,944 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 96 transitions. [2022-02-20 23:39:58,944 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:58,944 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:58,944 INFO L74 IsIncluded]: Start isIncluded. First operand has 88 states, 84 states have (on average 1.0714285714285714) internal successors, (90), 87 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 94 states. [2022-02-20 23:39:58,944 INFO L87 Difference]: Start difference. First operand has 88 states, 84 states have (on average 1.0714285714285714) internal successors, (90), 87 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 94 states. [2022-02-20 23:39:58,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:58,945 INFO L93 Difference]: Finished difference Result 94 states and 96 transitions. [2022-02-20 23:39:58,945 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 96 transitions. [2022-02-20 23:39:58,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:58,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:58,945 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:58,945 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:58,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 88 states, 84 states have (on average 1.0714285714285714) internal successors, (90), 87 states have internal predecessors, (90), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:58,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 88 states to 88 states and 90 transitions. [2022-02-20 23:39:58,946 INFO L78 Accepts]: Start accepts. Automaton has 88 states and 90 transitions. Word has length 70 [2022-02-20 23:39:58,946 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:58,946 INFO L470 AbstractCegarLoop]: Abstraction has 88 states and 90 transitions. [2022-02-20 23:39:58,946 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 27 states have (on average 5.814814814814815) internal successors, (157), 28 states have internal predecessors, (157), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:58,946 INFO L276 IsEmpty]: Start isEmpty. Operand 88 states and 90 transitions. [2022-02-20 23:39:58,946 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-02-20 23:39:58,946 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:58,946 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:58,965 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-02-20 23:39:59,147 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,SelfDestructingSolverStorable28 [2022-02-20 23:39:59,147 INFO L402 AbstractCegarLoop]: === Iteration 30 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:59,147 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:59,148 INFO L85 PathProgramCache]: Analyzing trace with hash 810248679, now seen corresponding path program 5 times [2022-02-20 23:39:59,148 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:59,148 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [636398965] [2022-02-20 23:39:59,148 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:59,148 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:59,191 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:59,375 INFO L290 TraceCheckUtils]: 0: Hoare triple {12073#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12073#true} is VALID [2022-02-20 23:39:59,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {12073#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {12073#true} is VALID [2022-02-20 23:39:59,375 INFO L290 TraceCheckUtils]: 2: Hoare triple {12073#true} assume !(main_~length1~0#1 < 1); {12073#true} is VALID [2022-02-20 23:39:59,375 INFO L290 TraceCheckUtils]: 3: Hoare triple {12073#true} assume !(main_~length2~0#1 < 1); {12073#true} is VALID [2022-02-20 23:39:59,376 INFO L290 TraceCheckUtils]: 4: Hoare triple {12073#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {12075#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:59,376 INFO L290 TraceCheckUtils]: 5: Hoare triple {12075#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12075#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:59,377 INFO L290 TraceCheckUtils]: 6: Hoare triple {12075#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12075#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:59,377 INFO L290 TraceCheckUtils]: 7: Hoare triple {12075#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {12075#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:59,377 INFO L290 TraceCheckUtils]: 8: Hoare triple {12075#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12076#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:59,378 INFO L290 TraceCheckUtils]: 9: Hoare triple {12076#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12076#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:59,378 INFO L290 TraceCheckUtils]: 10: Hoare triple {12076#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12076#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:59,379 INFO L290 TraceCheckUtils]: 11: Hoare triple {12076#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet18#1; {12076#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:59,379 INFO L290 TraceCheckUtils]: 12: Hoare triple {12076#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12077#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:39:59,380 INFO L290 TraceCheckUtils]: 13: Hoare triple {12077#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12078#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,380 INFO L290 TraceCheckUtils]: 14: Hoare triple {12078#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12078#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,381 INFO L290 TraceCheckUtils]: 15: Hoare triple {12078#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet18#1; {12078#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,381 INFO L290 TraceCheckUtils]: 16: Hoare triple {12078#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12079#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,382 INFO L290 TraceCheckUtils]: 17: Hoare triple {12079#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,382 INFO L290 TraceCheckUtils]: 18: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_~i~1#1 := 0; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,382 INFO L290 TraceCheckUtils]: 19: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,383 INFO L290 TraceCheckUtils]: 20: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,383 INFO L290 TraceCheckUtils]: 21: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,384 INFO L290 TraceCheckUtils]: 22: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,385 INFO L290 TraceCheckUtils]: 24: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,385 INFO L290 TraceCheckUtils]: 25: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,385 INFO L290 TraceCheckUtils]: 26: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,386 INFO L290 TraceCheckUtils]: 27: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,386 INFO L290 TraceCheckUtils]: 28: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,387 INFO L290 TraceCheckUtils]: 29: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,387 INFO L290 TraceCheckUtils]: 30: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,387 INFO L290 TraceCheckUtils]: 31: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:59,388 INFO L290 TraceCheckUtils]: 32: Hoare triple {12080#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {12081#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:59,389 INFO L290 TraceCheckUtils]: 33: Hoare triple {12081#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {12081#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:59,389 INFO L290 TraceCheckUtils]: 34: Hoare triple {12081#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3)) 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,390 INFO L290 TraceCheckUtils]: 35: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} assume !(0 == cstrncmp_~n#1); {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,390 INFO L290 TraceCheckUtils]: 36: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,390 INFO L290 TraceCheckUtils]: 37: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} assume cstrncmp_#t~short5#1; {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,391 INFO L290 TraceCheckUtils]: 38: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,391 INFO L290 TraceCheckUtils]: 39: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,392 INFO L290 TraceCheckUtils]: 40: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,392 INFO L290 TraceCheckUtils]: 41: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,392 INFO L290 TraceCheckUtils]: 42: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} assume !cstrncmp_#t~short7#1; {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,393 INFO L290 TraceCheckUtils]: 43: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,393 INFO L290 TraceCheckUtils]: 44: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} is VALID [2022-02-20 23:39:59,394 INFO L290 TraceCheckUtils]: 45: Hoare triple {12082#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 3) 0))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,394 INFO L290 TraceCheckUtils]: 46: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,394 INFO L290 TraceCheckUtils]: 47: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume cstrncmp_#t~short5#1; {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,395 INFO L290 TraceCheckUtils]: 48: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,395 INFO L290 TraceCheckUtils]: 49: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,395 INFO L290 TraceCheckUtils]: 50: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,396 INFO L290 TraceCheckUtils]: 51: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,396 INFO L290 TraceCheckUtils]: 52: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !cstrncmp_#t~short7#1; {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,397 INFO L290 TraceCheckUtils]: 53: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,397 INFO L290 TraceCheckUtils]: 54: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:39:59,397 INFO L290 TraceCheckUtils]: 55: Hoare triple {12083#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,398 INFO L290 TraceCheckUtils]: 56: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,398 INFO L290 TraceCheckUtils]: 57: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume cstrncmp_#t~short5#1; {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,398 INFO L290 TraceCheckUtils]: 58: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,399 INFO L290 TraceCheckUtils]: 59: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,399 INFO L290 TraceCheckUtils]: 60: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,399 INFO L290 TraceCheckUtils]: 61: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,401 INFO L290 TraceCheckUtils]: 62: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !cstrncmp_#t~short7#1; {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,401 INFO L290 TraceCheckUtils]: 63: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,401 INFO L290 TraceCheckUtils]: 64: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:59,402 INFO L290 TraceCheckUtils]: 65: Hoare triple {12084#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:59,403 INFO L290 TraceCheckUtils]: 66: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:59,403 INFO L290 TraceCheckUtils]: 67: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume cstrncmp_#t~short5#1; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:59,403 INFO L290 TraceCheckUtils]: 68: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:59,404 INFO L290 TraceCheckUtils]: 69: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:59,404 INFO L290 TraceCheckUtils]: 70: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:59,404 INFO L290 TraceCheckUtils]: 71: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:59,405 INFO L290 TraceCheckUtils]: 72: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:39:59,405 INFO L290 TraceCheckUtils]: 73: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12086#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:39:59,405 INFO L290 TraceCheckUtils]: 74: Hoare triple {12086#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12087#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:39:59,406 INFO L290 TraceCheckUtils]: 75: Hoare triple {12087#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12074#false} is VALID [2022-02-20 23:39:59,406 INFO L290 TraceCheckUtils]: 76: Hoare triple {12074#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12074#false} is VALID [2022-02-20 23:39:59,406 INFO L290 TraceCheckUtils]: 77: Hoare triple {12074#false} assume cstrncmp_#t~short5#1; {12074#false} is VALID [2022-02-20 23:39:59,406 INFO L290 TraceCheckUtils]: 78: Hoare triple {12074#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {12074#false} is VALID [2022-02-20 23:39:59,406 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 12 proven. 75 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:39:59,406 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:59,406 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [636398965] [2022-02-20 23:39:59,406 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [636398965] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:59,406 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [659655619] [2022-02-20 23:39:59,406 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 23:39:59,406 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:59,407 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:59,408 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:39:59,409 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:39:59,542 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 5 check-sat command(s) [2022-02-20 23:39:59,542 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:59,543 INFO L263 TraceCheckSpWp]: Trace formula consists of 336 conjuncts, 43 conjunts are in the unsatisfiable core [2022-02-20 23:39:59,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:59,557 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:59,750 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:40:02,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:40:02,456 INFO L290 TraceCheckUtils]: 0: Hoare triple {12073#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12073#true} is VALID [2022-02-20 23:40:02,456 INFO L290 TraceCheckUtils]: 1: Hoare triple {12073#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {12073#true} is VALID [2022-02-20 23:40:02,456 INFO L290 TraceCheckUtils]: 2: Hoare triple {12073#true} assume !(main_~length1~0#1 < 1); {12073#true} is VALID [2022-02-20 23:40:02,456 INFO L290 TraceCheckUtils]: 3: Hoare triple {12073#true} assume !(main_~length2~0#1 < 1); {12073#true} is VALID [2022-02-20 23:40:02,456 INFO L290 TraceCheckUtils]: 4: Hoare triple {12073#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {12073#true} is VALID [2022-02-20 23:40:02,456 INFO L290 TraceCheckUtils]: 5: Hoare triple {12073#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 6: Hoare triple {12073#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 7: Hoare triple {12073#true} havoc main_#t~nondet18#1; {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 8: Hoare triple {12073#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 9: Hoare triple {12073#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 10: Hoare triple {12073#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 11: Hoare triple {12073#true} havoc main_#t~nondet18#1; {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 12: Hoare triple {12073#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 13: Hoare triple {12073#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12073#true} is VALID [2022-02-20 23:40:02,457 INFO L290 TraceCheckUtils]: 14: Hoare triple {12073#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12073#true} is VALID [2022-02-20 23:40:02,458 INFO L290 TraceCheckUtils]: 15: Hoare triple {12073#true} havoc main_#t~nondet18#1; {12073#true} is VALID [2022-02-20 23:40:02,458 INFO L290 TraceCheckUtils]: 16: Hoare triple {12073#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12073#true} is VALID [2022-02-20 23:40:02,458 INFO L290 TraceCheckUtils]: 17: Hoare triple {12073#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {12073#true} is VALID [2022-02-20 23:40:02,458 INFO L290 TraceCheckUtils]: 18: Hoare triple {12073#true} main_~i~1#1 := 0; {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:40:02,458 INFO L290 TraceCheckUtils]: 19: Hoare triple {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:40:02,459 INFO L290 TraceCheckUtils]: 20: Hoare triple {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:40:02,459 INFO L290 TraceCheckUtils]: 21: Hoare triple {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~nondet20#1; {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:40:02,459 INFO L290 TraceCheckUtils]: 22: Hoare triple {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:40:02,460 INFO L290 TraceCheckUtils]: 23: Hoare triple {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:40:02,460 INFO L290 TraceCheckUtils]: 24: Hoare triple {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:40:02,460 INFO L290 TraceCheckUtils]: 25: Hoare triple {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} havoc main_#t~nondet20#1; {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:40:02,460 INFO L290 TraceCheckUtils]: 26: Hoare triple {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12171#(= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:02,461 INFO L290 TraceCheckUtils]: 27: Hoare triple {12171#(= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12175#(and (= 2 |ULTIMATE.start_main_~i~1#1|) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,461 INFO L290 TraceCheckUtils]: 28: Hoare triple {12175#(and (= 2 |ULTIMATE.start_main_~i~1#1|) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12175#(and (= 2 |ULTIMATE.start_main_~i~1#1|) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,462 INFO L290 TraceCheckUtils]: 29: Hoare triple {12175#(and (= 2 |ULTIMATE.start_main_~i~1#1|) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet20#1; {12175#(and (= 2 |ULTIMATE.start_main_~i~1#1|) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,462 INFO L290 TraceCheckUtils]: 30: Hoare triple {12175#(and (= 2 |ULTIMATE.start_main_~i~1#1|) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12185#(and (< 3 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:40:02,462 INFO L290 TraceCheckUtils]: 31: Hoare triple {12185#(and (< 3 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 3))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {12189#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,463 INFO L290 TraceCheckUtils]: 32: Hoare triple {12189#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {12189#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,464 INFO L290 TraceCheckUtils]: 33: Hoare triple {12189#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {12196#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,464 INFO L290 TraceCheckUtils]: 34: Hoare triple {12196#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,465 INFO L290 TraceCheckUtils]: 35: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume !(0 == cstrncmp_~n#1); {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,465 INFO L290 TraceCheckUtils]: 36: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,465 INFO L290 TraceCheckUtils]: 37: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume cstrncmp_#t~short5#1; {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,465 INFO L290 TraceCheckUtils]: 38: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,466 INFO L290 TraceCheckUtils]: 39: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,466 INFO L290 TraceCheckUtils]: 40: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,466 INFO L290 TraceCheckUtils]: 41: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,467 INFO L290 TraceCheckUtils]: 42: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume !cstrncmp_#t~short7#1; {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,467 INFO L290 TraceCheckUtils]: 43: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,467 INFO L290 TraceCheckUtils]: 44: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,471 INFO L290 TraceCheckUtils]: 45: Hoare triple {12200#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,474 INFO L290 TraceCheckUtils]: 46: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,475 INFO L290 TraceCheckUtils]: 47: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} assume cstrncmp_#t~short5#1; {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,475 INFO L290 TraceCheckUtils]: 48: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,476 INFO L290 TraceCheckUtils]: 49: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,476 INFO L290 TraceCheckUtils]: 50: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,477 INFO L290 TraceCheckUtils]: 51: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,478 INFO L290 TraceCheckUtils]: 52: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} assume !cstrncmp_#t~short7#1; {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,478 INFO L290 TraceCheckUtils]: 53: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,479 INFO L290 TraceCheckUtils]: 54: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} is VALID [2022-02-20 23:40:02,480 INFO L290 TraceCheckUtils]: 55: Hoare triple {12234#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 2) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,481 INFO L290 TraceCheckUtils]: 56: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,481 INFO L290 TraceCheckUtils]: 57: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume cstrncmp_#t~short5#1; {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,482 INFO L290 TraceCheckUtils]: 58: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,483 INFO L290 TraceCheckUtils]: 59: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,483 INFO L290 TraceCheckUtils]: 60: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,484 INFO L290 TraceCheckUtils]: 61: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,486 INFO L290 TraceCheckUtils]: 62: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume !cstrncmp_#t~short7#1; {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,492 INFO L290 TraceCheckUtils]: 63: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,492 INFO L290 TraceCheckUtils]: 64: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,494 INFO L290 TraceCheckUtils]: 65: Hoare triple {12265#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 3) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12296#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,494 INFO L290 TraceCheckUtils]: 66: Hoare triple {12296#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12296#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,495 INFO L290 TraceCheckUtils]: 67: Hoare triple {12296#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} assume cstrncmp_#t~short5#1; {12296#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:02,496 INFO L290 TraceCheckUtils]: 68: Hoare triple {12296#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12306#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:40:02,498 INFO L290 TraceCheckUtils]: 69: Hoare triple {12306#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12310#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_cstrncmp_#t~mem4#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:40:02,499 INFO L290 TraceCheckUtils]: 70: Hoare triple {12310#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_cstrncmp_#t~mem4#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12314#(exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (or (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) |ULTIMATE.start_cstrncmp_#t~short5#1|) (and (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))))} is VALID [2022-02-20 23:40:02,499 INFO L290 TraceCheckUtils]: 71: Hoare triple {12314#(exists ((|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_main_~length2~0#1| (- 4) |ULTIMATE.start_cstrncmp_~s2#1.offset|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|) (or (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) |ULTIMATE.start_cstrncmp_#t~short5#1|) (and (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:02,500 INFO L290 TraceCheckUtils]: 72: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:02,500 INFO L290 TraceCheckUtils]: 73: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12086#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:40:02,500 INFO L290 TraceCheckUtils]: 74: Hoare triple {12086#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12087#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:40:02,501 INFO L290 TraceCheckUtils]: 75: Hoare triple {12087#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12074#false} is VALID [2022-02-20 23:40:02,501 INFO L290 TraceCheckUtils]: 76: Hoare triple {12074#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12074#false} is VALID [2022-02-20 23:40:02,501 INFO L290 TraceCheckUtils]: 77: Hoare triple {12074#false} assume cstrncmp_#t~short5#1; {12074#false} is VALID [2022-02-20 23:40:02,501 INFO L290 TraceCheckUtils]: 78: Hoare triple {12074#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {12074#false} is VALID [2022-02-20 23:40:02,501 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 12 proven. 75 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:40:02,501 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:05,672 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:40:05,672 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 91 treesize of output 91 [2022-02-20 23:40:05,815 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 36 treesize of output 32 [2022-02-20 23:40:06,083 INFO L290 TraceCheckUtils]: 78: Hoare triple {12074#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {12074#false} is VALID [2022-02-20 23:40:06,083 INFO L290 TraceCheckUtils]: 77: Hoare triple {12074#false} assume cstrncmp_#t~short5#1; {12074#false} is VALID [2022-02-20 23:40:06,083 INFO L290 TraceCheckUtils]: 76: Hoare triple {12074#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12074#false} is VALID [2022-02-20 23:40:06,083 INFO L290 TraceCheckUtils]: 75: Hoare triple {12087#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12074#false} is VALID [2022-02-20 23:40:06,084 INFO L290 TraceCheckUtils]: 74: Hoare triple {12086#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12087#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:40:06,084 INFO L290 TraceCheckUtils]: 73: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12086#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:40:06,084 INFO L290 TraceCheckUtils]: 72: Hoare triple {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:06,085 INFO L290 TraceCheckUtils]: 71: Hoare triple {12360#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12085#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:06,085 INFO L290 TraceCheckUtils]: 70: Hoare triple {12364#(or (not (= |ULTIMATE.start_cstrncmp_#t~mem4#1| |ULTIMATE.start_cstrncmp_#t~mem3#1|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12360#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:06,085 INFO L290 TraceCheckUtils]: 69: Hoare triple {12368#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12364#(or (not (= |ULTIMATE.start_cstrncmp_#t~mem4#1| |ULTIMATE.start_cstrncmp_#t~mem3#1|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:06,086 INFO L290 TraceCheckUtils]: 68: Hoare triple {12372#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12368#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|))))} is VALID [2022-02-20 23:40:06,087 INFO L290 TraceCheckUtils]: 67: Hoare triple {12372#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {12372#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,087 INFO L290 TraceCheckUtils]: 66: Hoare triple {12372#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12372#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,088 INFO L290 TraceCheckUtils]: 65: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12372#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,089 INFO L290 TraceCheckUtils]: 64: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,089 INFO L290 TraceCheckUtils]: 63: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,090 INFO L290 TraceCheckUtils]: 62: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1; {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,090 INFO L290 TraceCheckUtils]: 61: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,091 INFO L290 TraceCheckUtils]: 60: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,092 INFO L290 TraceCheckUtils]: 59: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,092 INFO L290 TraceCheckUtils]: 58: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,093 INFO L290 TraceCheckUtils]: 57: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,093 INFO L290 TraceCheckUtils]: 56: Hoare triple {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,094 INFO L290 TraceCheckUtils]: 55: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12382#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,095 INFO L290 TraceCheckUtils]: 54: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,095 INFO L290 TraceCheckUtils]: 53: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,095 INFO L290 TraceCheckUtils]: 52: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1; {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,096 INFO L290 TraceCheckUtils]: 51: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,096 INFO L290 TraceCheckUtils]: 50: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,097 INFO L290 TraceCheckUtils]: 49: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,097 INFO L290 TraceCheckUtils]: 48: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,098 INFO L290 TraceCheckUtils]: 47: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,098 INFO L290 TraceCheckUtils]: 46: Hoare triple {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,099 INFO L290 TraceCheckUtils]: 45: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {12413#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,099 INFO L290 TraceCheckUtils]: 44: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,100 INFO L290 TraceCheckUtils]: 43: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,100 INFO L290 TraceCheckUtils]: 42: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume !cstrncmp_#t~short7#1; {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,101 INFO L290 TraceCheckUtils]: 41: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,102 INFO L290 TraceCheckUtils]: 40: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,102 INFO L290 TraceCheckUtils]: 39: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,103 INFO L290 TraceCheckUtils]: 38: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,103 INFO L290 TraceCheckUtils]: 37: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume cstrncmp_#t~short5#1; {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,104 INFO L290 TraceCheckUtils]: 36: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,104 INFO L290 TraceCheckUtils]: 35: Hoare triple {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume !(0 == cstrncmp_~n#1); {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,105 INFO L290 TraceCheckUtils]: 34: Hoare triple {12478#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {12444#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:06,106 INFO L290 TraceCheckUtils]: 33: Hoare triple {12189#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {12478#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:06,106 INFO L290 TraceCheckUtils]: 32: Hoare triple {12189#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {12189#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:06,107 INFO L290 TraceCheckUtils]: 31: Hoare triple {12488#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {12189#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:06,107 INFO L290 TraceCheckUtils]: 30: Hoare triple {12492#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12488#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:06,108 INFO L290 TraceCheckUtils]: 29: Hoare triple {12492#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet20#1; {12492#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:06,108 INFO L290 TraceCheckUtils]: 28: Hoare triple {12492#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12492#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:06,108 INFO L290 TraceCheckUtils]: 27: Hoare triple {12171#(= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12492#(or (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (< 3 |ULTIMATE.start_main_~length2~0#1|)) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:06,109 INFO L290 TraceCheckUtils]: 26: Hoare triple {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12171#(= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:06,109 INFO L290 TraceCheckUtils]: 25: Hoare triple {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} havoc main_#t~nondet20#1; {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:40:06,109 INFO L290 TraceCheckUtils]: 24: Hoare triple {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:40:06,110 INFO L290 TraceCheckUtils]: 23: Hoare triple {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:40:06,110 INFO L290 TraceCheckUtils]: 22: Hoare triple {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {12158#(= |ULTIMATE.start_main_~i~1#1| 1)} is VALID [2022-02-20 23:40:06,110 INFO L290 TraceCheckUtils]: 21: Hoare triple {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} havoc main_#t~nondet20#1; {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:40:06,110 INFO L290 TraceCheckUtils]: 20: Hoare triple {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 19: Hoare triple {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 18: Hoare triple {12073#true} main_~i~1#1 := 0; {12145#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 17: Hoare triple {12073#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 16: Hoare triple {12073#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 15: Hoare triple {12073#true} havoc main_#t~nondet18#1; {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 14: Hoare triple {12073#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 13: Hoare triple {12073#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 12: Hoare triple {12073#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 11: Hoare triple {12073#true} havoc main_#t~nondet18#1; {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 10: Hoare triple {12073#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 9: Hoare triple {12073#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 8: Hoare triple {12073#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 7: Hoare triple {12073#true} havoc main_#t~nondet18#1; {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 6: Hoare triple {12073#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12073#true} is VALID [2022-02-20 23:40:06,111 INFO L290 TraceCheckUtils]: 5: Hoare triple {12073#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {12073#true} is VALID [2022-02-20 23:40:06,112 INFO L290 TraceCheckUtils]: 4: Hoare triple {12073#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {12073#true} is VALID [2022-02-20 23:40:06,112 INFO L290 TraceCheckUtils]: 3: Hoare triple {12073#true} assume !(main_~length2~0#1 < 1); {12073#true} is VALID [2022-02-20 23:40:06,112 INFO L290 TraceCheckUtils]: 2: Hoare triple {12073#true} assume !(main_~length1~0#1 < 1); {12073#true} is VALID [2022-02-20 23:40:06,112 INFO L290 TraceCheckUtils]: 1: Hoare triple {12073#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {12073#true} is VALID [2022-02-20 23:40:06,112 INFO L290 TraceCheckUtils]: 0: Hoare triple {12073#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12073#true} is VALID [2022-02-20 23:40:06,112 INFO L134 CoverageAnalysis]: Checked inductivity of 102 backedges. 12 proven. 75 refuted. 0 times theorem prover too weak. 15 trivial. 0 not checked. [2022-02-20 23:40:06,112 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [659655619] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:06,112 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:40:06,112 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 19, 19] total 39 [2022-02-20 23:40:06,113 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [349351614] [2022-02-20 23:40:06,113 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:06,113 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 39 states have (on average 4.487179487179487) internal successors, (175), 39 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 79 [2022-02-20 23:40:06,113 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:06,113 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 39 states, 39 states have (on average 4.487179487179487) internal successors, (175), 39 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:06,254 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 175 edges. 175 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:06,254 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 39 states [2022-02-20 23:40:06,255 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:06,255 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 39 interpolants. [2022-02-20 23:40:06,255 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=102, Invalid=1380, Unknown=0, NotChecked=0, Total=1482 [2022-02-20 23:40:06,255 INFO L87 Difference]: Start difference. First operand 88 states and 90 transitions. Second operand has 39 states, 39 states have (on average 4.487179487179487) internal successors, (175), 39 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:08,390 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:08,390 INFO L93 Difference]: Finished difference Result 247 states and 252 transitions. [2022-02-20 23:40:08,390 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 51 states. [2022-02-20 23:40:08,391 INFO L78 Accepts]: Start accepts. Automaton has has 39 states, 39 states have (on average 4.487179487179487) internal successors, (175), 39 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 79 [2022-02-20 23:40:08,391 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:08,391 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 39 states have (on average 4.487179487179487) internal successors, (175), 39 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:08,392 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 219 transitions. [2022-02-20 23:40:08,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 39 states, 39 states have (on average 4.487179487179487) internal successors, (175), 39 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:08,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 51 states to 51 states and 219 transitions. [2022-02-20 23:40:08,393 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 51 states and 219 transitions. [2022-02-20 23:40:08,606 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 219 edges. 219 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:08,606 INFO L225 Difference]: With dead ends: 247 [2022-02-20 23:40:08,606 INFO L226 Difference]: Without dead ends: 102 [2022-02-20 23:40:08,607 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 205 GetRequests, 132 SyntacticMatches, 9 SemanticMatches, 64 ConstructedPredicates, 0 IntricatePredicates, 5 DeprecatedPredicates, 802 ImplicationChecksByTransitivity, 3.1s TimeCoverageRelationStatistics Valid=311, Invalid=3979, Unknown=0, NotChecked=0, Total=4290 [2022-02-20 23:40:08,608 INFO L933 BasicCegarLoop]: 41 mSDtfsCounter, 87 mSDsluCounter, 1020 mSDsCounter, 0 mSdLazyCounter, 628 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 87 SdHoareTripleChecker+Valid, 1061 SdHoareTripleChecker+Invalid, 1014 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 628 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 362 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:08,608 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [87 Valid, 1061 Invalid, 1014 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 628 Invalid, 0 Unknown, 362 Unchecked, 0.4s Time] [2022-02-20 23:40:08,608 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2022-02-20 23:40:08,609 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 96. [2022-02-20 23:40:08,609 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:08,609 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand has 96 states, 92 states have (on average 1.065217391304348) internal successors, (98), 95 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call 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:08,609 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand has 96 states, 92 states have (on average 1.065217391304348) internal successors, (98), 95 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call 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:08,609 INFO L87 Difference]: Start difference. First operand 102 states. Second operand has 96 states, 92 states have (on average 1.065217391304348) internal successors, (98), 95 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call 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:08,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:08,610 INFO L93 Difference]: Finished difference Result 102 states and 104 transitions. [2022-02-20 23:40:08,610 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 104 transitions. [2022-02-20 23:40:08,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:08,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:08,610 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 92 states have (on average 1.065217391304348) internal successors, (98), 95 states have internal predecessors, (98), 0 states have call successors, (0), 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 102 states. [2022-02-20 23:40:08,614 INFO L87 Difference]: Start difference. First operand has 96 states, 92 states have (on average 1.065217391304348) internal successors, (98), 95 states have internal predecessors, (98), 0 states have call successors, (0), 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 102 states. [2022-02-20 23:40:08,614 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:08,614 INFO L93 Difference]: Finished difference Result 102 states and 104 transitions. [2022-02-20 23:40:08,615 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 104 transitions. [2022-02-20 23:40:08,615 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:08,615 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:08,615 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:08,615 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:08,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 92 states have (on average 1.065217391304348) internal successors, (98), 95 states have internal predecessors, (98), 0 states have call successors, (0), 0 states have call 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:08,616 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 98 transitions. [2022-02-20 23:40:08,616 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 98 transitions. Word has length 79 [2022-02-20 23:40:08,616 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:08,616 INFO L470 AbstractCegarLoop]: Abstraction has 96 states and 98 transitions. [2022-02-20 23:40:08,616 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 39 states, 39 states have (on average 4.487179487179487) internal successors, (175), 39 states have internal predecessors, (175), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:08,616 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 98 transitions. [2022-02-20 23:40:08,617 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 88 [2022-02-20 23:40:08,617 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:08,617 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:08,643 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:40:08,817 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:08,818 INFO L402 AbstractCegarLoop]: === Iteration 31 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:40:08,818 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:08,818 INFO L85 PathProgramCache]: Analyzing trace with hash 136208941, now seen corresponding path program 6 times [2022-02-20 23:40:08,818 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:08,818 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1263134049] [2022-02-20 23:40:08,818 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:08,818 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:08,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:08,984 INFO L290 TraceCheckUtils]: 0: Hoare triple {13189#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13189#true} is VALID [2022-02-20 23:40:08,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {13189#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {13189#true} is VALID [2022-02-20 23:40:08,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {13189#true} assume !(main_~length1~0#1 < 1); {13189#true} is VALID [2022-02-20 23:40:08,984 INFO L290 TraceCheckUtils]: 3: Hoare triple {13189#true} assume !(main_~length2~0#1 < 1); {13189#true} is VALID [2022-02-20 23:40:08,985 INFO L290 TraceCheckUtils]: 4: Hoare triple {13189#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {13191#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,985 INFO L290 TraceCheckUtils]: 5: Hoare triple {13191#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13191#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,986 INFO L290 TraceCheckUtils]: 6: Hoare triple {13191#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13191#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,986 INFO L290 TraceCheckUtils]: 7: Hoare triple {13191#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {13191#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,987 INFO L290 TraceCheckUtils]: 8: Hoare triple {13191#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,987 INFO L290 TraceCheckUtils]: 9: Hoare triple {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,987 INFO L290 TraceCheckUtils]: 10: Hoare triple {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,988 INFO L290 TraceCheckUtils]: 11: Hoare triple {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,988 INFO L290 TraceCheckUtils]: 12: Hoare triple {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:08,989 INFO L290 TraceCheckUtils]: 13: Hoare triple {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:08,989 INFO L290 TraceCheckUtils]: 14: Hoare triple {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:08,989 INFO L290 TraceCheckUtils]: 15: Hoare triple {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet18#1; {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:08,990 INFO L290 TraceCheckUtils]: 16: Hoare triple {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13194#(and (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,990 INFO L290 TraceCheckUtils]: 17: Hoare triple {13194#(and (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,991 INFO L290 TraceCheckUtils]: 18: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,991 INFO L290 TraceCheckUtils]: 19: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,992 INFO L290 TraceCheckUtils]: 20: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,992 INFO L290 TraceCheckUtils]: 21: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,992 INFO L290 TraceCheckUtils]: 22: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,993 INFO L290 TraceCheckUtils]: 23: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,993 INFO L290 TraceCheckUtils]: 24: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,993 INFO L290 TraceCheckUtils]: 25: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,994 INFO L290 TraceCheckUtils]: 26: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,994 INFO L290 TraceCheckUtils]: 27: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,995 INFO L290 TraceCheckUtils]: 28: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,995 INFO L290 TraceCheckUtils]: 29: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,995 INFO L290 TraceCheckUtils]: 30: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,996 INFO L290 TraceCheckUtils]: 31: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,996 INFO L290 TraceCheckUtils]: 32: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,997 INFO L290 TraceCheckUtils]: 33: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,997 INFO L290 TraceCheckUtils]: 34: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,997 INFO L290 TraceCheckUtils]: 35: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,998 INFO L290 TraceCheckUtils]: 36: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,998 INFO L290 TraceCheckUtils]: 37: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,999 INFO L290 TraceCheckUtils]: 38: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:08,999 INFO L290 TraceCheckUtils]: 39: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,000 INFO L290 TraceCheckUtils]: 40: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {13196#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:40:09,000 INFO L290 TraceCheckUtils]: 41: Hoare triple {13196#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {13196#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:40:09,001 INFO L290 TraceCheckUtils]: 42: Hoare triple {13196#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,001 INFO L290 TraceCheckUtils]: 43: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(0 == cstrncmp_~n#1); {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,001 INFO L290 TraceCheckUtils]: 44: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,002 INFO L290 TraceCheckUtils]: 45: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,002 INFO L290 TraceCheckUtils]: 46: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,003 INFO L290 TraceCheckUtils]: 47: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,003 INFO L290 TraceCheckUtils]: 48: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,004 INFO L290 TraceCheckUtils]: 49: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,004 INFO L290 TraceCheckUtils]: 50: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,004 INFO L290 TraceCheckUtils]: 51: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,005 INFO L290 TraceCheckUtils]: 52: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,005 INFO L290 TraceCheckUtils]: 53: Hoare triple {13197#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,006 INFO L290 TraceCheckUtils]: 54: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,006 INFO L290 TraceCheckUtils]: 55: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,006 INFO L290 TraceCheckUtils]: 56: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,007 INFO L290 TraceCheckUtils]: 57: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,007 INFO L290 TraceCheckUtils]: 58: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,008 INFO L290 TraceCheckUtils]: 59: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,008 INFO L290 TraceCheckUtils]: 60: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1; {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,008 INFO L290 TraceCheckUtils]: 61: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,009 INFO L290 TraceCheckUtils]: 62: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,010 INFO L290 TraceCheckUtils]: 63: Hoare triple {13198#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,010 INFO L290 TraceCheckUtils]: 64: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,010 INFO L290 TraceCheckUtils]: 65: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,011 INFO L290 TraceCheckUtils]: 66: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,011 INFO L290 TraceCheckUtils]: 67: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,012 INFO L290 TraceCheckUtils]: 68: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,012 INFO L290 TraceCheckUtils]: 69: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,013 INFO L290 TraceCheckUtils]: 70: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,013 INFO L290 TraceCheckUtils]: 71: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,013 INFO L290 TraceCheckUtils]: 72: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,014 INFO L290 TraceCheckUtils]: 73: Hoare triple {13199#(and (<= 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,014 INFO L290 TraceCheckUtils]: 74: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,015 INFO L290 TraceCheckUtils]: 75: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,015 INFO L290 TraceCheckUtils]: 76: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,016 INFO L290 TraceCheckUtils]: 77: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,016 INFO L290 TraceCheckUtils]: 78: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,017 INFO L290 TraceCheckUtils]: 79: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,017 INFO L290 TraceCheckUtils]: 80: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1; {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,017 INFO L290 TraceCheckUtils]: 81: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,018 INFO L290 TraceCheckUtils]: 82: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,018 INFO L290 TraceCheckUtils]: 83: Hoare triple {13200#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13201#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,019 INFO L290 TraceCheckUtils]: 84: Hoare triple {13201#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13201#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,019 INFO L290 TraceCheckUtils]: 85: Hoare triple {13201#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {13201#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,020 INFO L290 TraceCheckUtils]: 86: Hoare triple {13201#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {13190#false} is VALID [2022-02-20 23:40:09,020 INFO L134 CoverageAnalysis]: Checked inductivity of 128 backedges. 6 proven. 94 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:09,020 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:09,020 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1263134049] [2022-02-20 23:40:09,021 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1263134049] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:40:09,021 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [618689877] [2022-02-20 23:40:09,021 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-02-20 23:40:09,021 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:09,021 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:09,022 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:40:09,023 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:40:09,157 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-02-20 23:40:09,157 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:40:09,159 INFO L263 TraceCheckSpWp]: Trace formula consists of 364 conjuncts, 35 conjunts are in the unsatisfiable core [2022-02-20 23:40:09,182 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:09,183 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:09,891 INFO L290 TraceCheckUtils]: 0: Hoare triple {13189#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13189#true} is VALID [2022-02-20 23:40:09,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {13189#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {13189#true} is VALID [2022-02-20 23:40:09,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {13189#true} assume !(main_~length1~0#1 < 1); {13189#true} is VALID [2022-02-20 23:40:09,891 INFO L290 TraceCheckUtils]: 3: Hoare triple {13189#true} assume !(main_~length2~0#1 < 1); {13189#true} is VALID [2022-02-20 23:40:09,892 INFO L290 TraceCheckUtils]: 4: Hoare triple {13189#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {13217#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:09,892 INFO L290 TraceCheckUtils]: 5: Hoare triple {13217#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13217#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:09,893 INFO L290 TraceCheckUtils]: 6: Hoare triple {13217#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13217#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:09,893 INFO L290 TraceCheckUtils]: 7: Hoare triple {13217#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet18#1; {13217#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:09,893 INFO L290 TraceCheckUtils]: 8: Hoare triple {13217#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,893 INFO L290 TraceCheckUtils]: 9: Hoare triple {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,894 INFO L290 TraceCheckUtils]: 10: Hoare triple {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,894 INFO L290 TraceCheckUtils]: 11: Hoare triple {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {13192#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:09,895 INFO L290 TraceCheckUtils]: 13: Hoare triple {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:09,895 INFO L290 TraceCheckUtils]: 14: Hoare triple {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:09,895 INFO L290 TraceCheckUtils]: 15: Hoare triple {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet18#1; {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:09,896 INFO L290 TraceCheckUtils]: 16: Hoare triple {13193#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13194#(and (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,896 INFO L290 TraceCheckUtils]: 17: Hoare triple {13194#(and (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,896 INFO L290 TraceCheckUtils]: 18: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,897 INFO L290 TraceCheckUtils]: 19: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,897 INFO L290 TraceCheckUtils]: 20: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,897 INFO L290 TraceCheckUtils]: 21: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,898 INFO L290 TraceCheckUtils]: 22: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,898 INFO L290 TraceCheckUtils]: 23: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,898 INFO L290 TraceCheckUtils]: 24: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,899 INFO L290 TraceCheckUtils]: 25: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,901 INFO L290 TraceCheckUtils]: 26: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,901 INFO L290 TraceCheckUtils]: 27: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,901 INFO L290 TraceCheckUtils]: 28: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,901 INFO L290 TraceCheckUtils]: 29: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,902 INFO L290 TraceCheckUtils]: 30: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,902 INFO L290 TraceCheckUtils]: 31: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,902 INFO L290 TraceCheckUtils]: 32: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,903 INFO L290 TraceCheckUtils]: 33: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,903 INFO L290 TraceCheckUtils]: 34: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,903 INFO L290 TraceCheckUtils]: 35: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,904 INFO L290 TraceCheckUtils]: 36: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,904 INFO L290 TraceCheckUtils]: 37: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,904 INFO L290 TraceCheckUtils]: 38: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,904 INFO L290 TraceCheckUtils]: 39: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:09,905 INFO L290 TraceCheckUtils]: 40: Hoare triple {13195#(and (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {13196#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:40:09,905 INFO L290 TraceCheckUtils]: 41: Hoare triple {13196#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {13196#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:40:09,906 INFO L290 TraceCheckUtils]: 42: Hoare triple {13196#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,906 INFO L290 TraceCheckUtils]: 43: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(0 == cstrncmp_~n#1); {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,906 INFO L290 TraceCheckUtils]: 44: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,907 INFO L290 TraceCheckUtils]: 45: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,907 INFO L290 TraceCheckUtils]: 46: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,907 INFO L290 TraceCheckUtils]: 47: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,908 INFO L290 TraceCheckUtils]: 48: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,908 INFO L290 TraceCheckUtils]: 49: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,908 INFO L290 TraceCheckUtils]: 50: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,909 INFO L290 TraceCheckUtils]: 51: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,909 INFO L290 TraceCheckUtils]: 52: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,909 INFO L290 TraceCheckUtils]: 53: Hoare triple {13332#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,910 INFO L290 TraceCheckUtils]: 54: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,910 INFO L290 TraceCheckUtils]: 55: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,910 INFO L290 TraceCheckUtils]: 56: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,911 INFO L290 TraceCheckUtils]: 57: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,911 INFO L290 TraceCheckUtils]: 58: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,911 INFO L290 TraceCheckUtils]: 59: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,912 INFO L290 TraceCheckUtils]: 60: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,912 INFO L290 TraceCheckUtils]: 61: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,912 INFO L290 TraceCheckUtils]: 62: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,913 INFO L290 TraceCheckUtils]: 63: Hoare triple {13366#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,913 INFO L290 TraceCheckUtils]: 64: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,913 INFO L290 TraceCheckUtils]: 65: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,914 INFO L290 TraceCheckUtils]: 66: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,914 INFO L290 TraceCheckUtils]: 67: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,914 INFO L290 TraceCheckUtils]: 68: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,915 INFO L290 TraceCheckUtils]: 69: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,915 INFO L290 TraceCheckUtils]: 70: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,915 INFO L290 TraceCheckUtils]: 71: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,916 INFO L290 TraceCheckUtils]: 72: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,916 INFO L290 TraceCheckUtils]: 73: Hoare triple {13397#(and (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 2) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13428#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3))} is VALID [2022-02-20 23:40:09,916 INFO L290 TraceCheckUtils]: 74: Hoare triple {13428#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13428#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3))} is VALID [2022-02-20 23:40:09,917 INFO L290 TraceCheckUtils]: 75: Hoare triple {13428#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3))} assume cstrncmp_#t~short5#1; {13428#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3))} is VALID [2022-02-20 23:40:09,917 INFO L290 TraceCheckUtils]: 76: Hoare triple {13428#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,917 INFO L290 TraceCheckUtils]: 77: Hoare triple {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,918 INFO L290 TraceCheckUtils]: 78: Hoare triple {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,918 INFO L290 TraceCheckUtils]: 79: Hoare triple {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,918 INFO L290 TraceCheckUtils]: 80: Hoare triple {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1; {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,919 INFO L290 TraceCheckUtils]: 81: Hoare triple {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,919 INFO L290 TraceCheckUtils]: 82: Hoare triple {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:09,919 INFO L290 TraceCheckUtils]: 83: Hoare triple {13438#(and (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 3) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13460#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,920 INFO L290 TraceCheckUtils]: 84: Hoare triple {13460#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13460#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,920 INFO L290 TraceCheckUtils]: 85: Hoare triple {13460#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {13460#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:09,920 INFO L290 TraceCheckUtils]: 86: Hoare triple {13460#(and (<= 1 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s1#1.offset| 4) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {13190#false} is VALID [2022-02-20 23:40:09,921 INFO L134 CoverageAnalysis]: Checked inductivity of 128 backedges. 15 proven. 85 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:09,921 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:10,481 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:40:10,772 INFO L290 TraceCheckUtils]: 86: Hoare triple {13470#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {13190#false} is VALID [2022-02-20 23:40:10,772 INFO L290 TraceCheckUtils]: 85: Hoare triple {13470#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} assume cstrncmp_#t~short5#1; {13470#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:10,773 INFO L290 TraceCheckUtils]: 84: Hoare triple {13470#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13470#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:10,773 INFO L290 TraceCheckUtils]: 83: Hoare triple {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13470#(and (<= (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|))} is VALID [2022-02-20 23:40:10,773 INFO L290 TraceCheckUtils]: 82: Hoare triple {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:40:10,774 INFO L290 TraceCheckUtils]: 81: Hoare triple {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:40:10,774 INFO L290 TraceCheckUtils]: 80: Hoare triple {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !cstrncmp_#t~short7#1; {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:40:10,774 INFO L290 TraceCheckUtils]: 79: Hoare triple {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:40:10,775 INFO L290 TraceCheckUtils]: 78: Hoare triple {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:40:10,775 INFO L290 TraceCheckUtils]: 77: Hoare triple {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:40:10,776 INFO L290 TraceCheckUtils]: 76: Hoare triple {13502#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13480#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)))} is VALID [2022-02-20 23:40:10,776 INFO L290 TraceCheckUtils]: 75: Hoare triple {13502#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} assume cstrncmp_#t~short5#1; {13502#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:40:10,776 INFO L290 TraceCheckUtils]: 74: Hoare triple {13502#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13502#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:40:10,777 INFO L290 TraceCheckUtils]: 73: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13502#(or (<= (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (not (<= 0 |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:40:10,777 INFO L290 TraceCheckUtils]: 72: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,777 INFO L290 TraceCheckUtils]: 71: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,778 INFO L290 TraceCheckUtils]: 70: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !cstrncmp_#t~short7#1; {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,778 INFO L290 TraceCheckUtils]: 69: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,778 INFO L290 TraceCheckUtils]: 68: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,779 INFO L290 TraceCheckUtils]: 67: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,779 INFO L290 TraceCheckUtils]: 66: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,779 INFO L290 TraceCheckUtils]: 65: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} assume cstrncmp_#t~short5#1; {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,780 INFO L290 TraceCheckUtils]: 64: Hoare triple {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,780 INFO L290 TraceCheckUtils]: 63: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13512#(or (< (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)))} is VALID [2022-02-20 23:40:10,780 INFO L290 TraceCheckUtils]: 62: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,781 INFO L290 TraceCheckUtils]: 61: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,781 INFO L290 TraceCheckUtils]: 60: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !cstrncmp_#t~short7#1; {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,781 INFO L290 TraceCheckUtils]: 59: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,782 INFO L290 TraceCheckUtils]: 58: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,782 INFO L290 TraceCheckUtils]: 57: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,782 INFO L290 TraceCheckUtils]: 56: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,783 INFO L290 TraceCheckUtils]: 55: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume cstrncmp_#t~short5#1; {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,783 INFO L290 TraceCheckUtils]: 54: Hoare triple {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,784 INFO L290 TraceCheckUtils]: 53: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {13543#(or (<= (+ 4 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,784 INFO L290 TraceCheckUtils]: 52: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,784 INFO L290 TraceCheckUtils]: 51: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,785 INFO L290 TraceCheckUtils]: 50: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !cstrncmp_#t~short7#1; {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,785 INFO L290 TraceCheckUtils]: 49: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,785 INFO L290 TraceCheckUtils]: 48: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,786 INFO L290 TraceCheckUtils]: 47: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,786 INFO L290 TraceCheckUtils]: 46: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,789 INFO L290 TraceCheckUtils]: 45: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume cstrncmp_#t~short5#1; {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,790 INFO L290 TraceCheckUtils]: 44: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,790 INFO L290 TraceCheckUtils]: 43: Hoare triple {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !(0 == cstrncmp_~n#1); {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,790 INFO L290 TraceCheckUtils]: 42: Hoare triple {13608#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {13574#(or (<= (+ 5 |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s1#1.base|)) (< (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:10,791 INFO L290 TraceCheckUtils]: 41: Hoare triple {13608#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {13608#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:40:10,791 INFO L290 TraceCheckUtils]: 40: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {13608#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} is VALID [2022-02-20 23:40:10,792 INFO L290 TraceCheckUtils]: 39: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,792 INFO L290 TraceCheckUtils]: 38: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,792 INFO L290 TraceCheckUtils]: 37: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,792 INFO L290 TraceCheckUtils]: 36: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,793 INFO L290 TraceCheckUtils]: 35: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,793 INFO L290 TraceCheckUtils]: 34: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,793 INFO L290 TraceCheckUtils]: 33: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,794 INFO L290 TraceCheckUtils]: 32: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,794 INFO L290 TraceCheckUtils]: 31: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,794 INFO L290 TraceCheckUtils]: 30: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,794 INFO L290 TraceCheckUtils]: 29: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,795 INFO L290 TraceCheckUtils]: 28: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,795 INFO L290 TraceCheckUtils]: 27: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,795 INFO L290 TraceCheckUtils]: 26: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,796 INFO L290 TraceCheckUtils]: 25: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet20#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,796 INFO L290 TraceCheckUtils]: 24: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,796 INFO L290 TraceCheckUtils]: 23: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,796 INFO L290 TraceCheckUtils]: 22: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} main_~i~1#1 := 0; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,797 INFO L290 TraceCheckUtils]: 21: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,797 INFO L290 TraceCheckUtils]: 20: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,797 INFO L290 TraceCheckUtils]: 19: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet18#1; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,798 INFO L290 TraceCheckUtils]: 18: Hoare triple {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,798 INFO L290 TraceCheckUtils]: 17: Hoare triple {13685#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13615#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,798 INFO L290 TraceCheckUtils]: 16: Hoare triple {13689#(or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13685#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (not (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:40:10,799 INFO L290 TraceCheckUtils]: 15: Hoare triple {13689#(or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet18#1; {13689#(or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,799 INFO L290 TraceCheckUtils]: 14: Hoare triple {13689#(or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13689#(or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,799 INFO L290 TraceCheckUtils]: 13: Hoare triple {13689#(or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13689#(or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,800 INFO L290 TraceCheckUtils]: 12: Hoare triple {13702#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13689#(or (<= |ULTIMATE.start_main_~length1~0#1| (+ 2 |ULTIMATE.start_main_~i~0#1|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:10,800 INFO L290 TraceCheckUtils]: 11: Hoare triple {13702#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)))} havoc main_#t~nondet18#1; {13702#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:40:10,800 INFO L290 TraceCheckUtils]: 10: Hoare triple {13702#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13702#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:40:10,801 INFO L290 TraceCheckUtils]: 9: Hoare triple {13702#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13702#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:40:10,801 INFO L290 TraceCheckUtils]: 8: Hoare triple {13715#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {13702#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ 3 |ULTIMATE.start_main_~i~0#1|)))} is VALID [2022-02-20 23:40:10,802 INFO L290 TraceCheckUtils]: 7: Hoare triple {13715#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)))} havoc main_#t~nondet18#1; {13715#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)))} is VALID [2022-02-20 23:40:10,802 INFO L290 TraceCheckUtils]: 6: Hoare triple {13715#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13715#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)))} is VALID [2022-02-20 23:40:10,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {13715#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {13715#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)))} is VALID [2022-02-20 23:40:10,803 INFO L290 TraceCheckUtils]: 4: Hoare triple {13189#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {13715#(or (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) 0) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~0#1| 4)))} is VALID [2022-02-20 23:40:10,803 INFO L290 TraceCheckUtils]: 3: Hoare triple {13189#true} assume !(main_~length2~0#1 < 1); {13189#true} is VALID [2022-02-20 23:40:10,803 INFO L290 TraceCheckUtils]: 2: Hoare triple {13189#true} assume !(main_~length1~0#1 < 1); {13189#true} is VALID [2022-02-20 23:40:10,803 INFO L290 TraceCheckUtils]: 1: Hoare triple {13189#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {13189#true} is VALID [2022-02-20 23:40:10,803 INFO L290 TraceCheckUtils]: 0: Hoare triple {13189#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13189#true} is VALID [2022-02-20 23:40:10,804 INFO L134 CoverageAnalysis]: Checked inductivity of 128 backedges. 28 proven. 72 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:10,804 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [618689877] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:10,804 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:40:10,804 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 13] total 31 [2022-02-20 23:40:10,804 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1218079143] [2022-02-20 23:40:10,804 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:10,805 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 31 states have (on average 6.32258064516129) internal successors, (196), 32 states have internal predecessors, (196), 0 states have call successors, (0), 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 87 [2022-02-20 23:40:10,805 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:10,805 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 32 states, 31 states have (on average 6.32258064516129) internal successors, (196), 32 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call 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:10,898 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 196 edges. 196 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:10,898 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2022-02-20 23:40:10,898 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:10,899 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2022-02-20 23:40:10,899 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=147, Invalid=845, Unknown=0, NotChecked=0, Total=992 [2022-02-20 23:40:10,899 INFO L87 Difference]: Start difference. First operand 96 states and 98 transitions. Second operand has 32 states, 31 states have (on average 6.32258064516129) internal successors, (196), 32 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call 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:11,983 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:11,984 INFO L93 Difference]: Finished difference Result 118 states and 120 transitions. [2022-02-20 23:40:11,984 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:40:11,984 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 31 states have (on average 6.32258064516129) internal successors, (196), 32 states have internal predecessors, (196), 0 states have call successors, (0), 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 87 [2022-02-20 23:40:11,984 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:11,984 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 31 states have (on average 6.32258064516129) internal successors, (196), 32 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call 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:11,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 109 transitions. [2022-02-20 23:40:11,985 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 31 states have (on average 6.32258064516129) internal successors, (196), 32 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call 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:11,985 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 109 transitions. [2022-02-20 23:40:11,985 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 109 transitions. [2022-02-20 23:40:12,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:12,073 INFO L225 Difference]: With dead ends: 118 [2022-02-20 23:40:12,073 INFO L226 Difference]: Without dead ends: 118 [2022-02-20 23:40:12,073 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 192 GetRequests, 153 SyntacticMatches, 1 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 247 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=318, Invalid=1242, Unknown=0, NotChecked=0, Total=1560 [2022-02-20 23:40:12,073 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 585 mSDsluCounter, 282 mSDsCounter, 0 mSdLazyCounter, 331 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 585 SdHoareTripleChecker+Valid, 331 SdHoareTripleChecker+Invalid, 380 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 331 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:12,074 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [585 Valid, 331 Invalid, 380 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 331 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:40:12,074 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 118 states. [2022-02-20 23:40:12,075 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 118 to 107. [2022-02-20 23:40:12,075 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:12,075 INFO L82 GeneralOperation]: Start isEquivalent. First operand 118 states. Second operand has 107 states, 103 states have (on average 1.0679611650485437) internal successors, (110), 106 states have internal predecessors, (110), 0 states have call successors, (0), 0 states have call 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:12,075 INFO L74 IsIncluded]: Start isIncluded. First operand 118 states. Second operand has 107 states, 103 states have (on average 1.0679611650485437) internal successors, (110), 106 states have internal predecessors, (110), 0 states have call successors, (0), 0 states have call 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:12,075 INFO L87 Difference]: Start difference. First operand 118 states. Second operand has 107 states, 103 states have (on average 1.0679611650485437) internal successors, (110), 106 states have internal predecessors, (110), 0 states have call successors, (0), 0 states have call 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:12,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:12,076 INFO L93 Difference]: Finished difference Result 118 states and 120 transitions. [2022-02-20 23:40:12,076 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 120 transitions. [2022-02-20 23:40:12,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:12,076 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:12,076 INFO L74 IsIncluded]: Start isIncluded. First operand has 107 states, 103 states have (on average 1.0679611650485437) internal successors, (110), 106 states have internal predecessors, (110), 0 states have call successors, (0), 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 118 states. [2022-02-20 23:40:12,077 INFO L87 Difference]: Start difference. First operand has 107 states, 103 states have (on average 1.0679611650485437) internal successors, (110), 106 states have internal predecessors, (110), 0 states have call successors, (0), 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 118 states. [2022-02-20 23:40:12,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:12,078 INFO L93 Difference]: Finished difference Result 118 states and 120 transitions. [2022-02-20 23:40:12,078 INFO L276 IsEmpty]: Start isEmpty. Operand 118 states and 120 transitions. [2022-02-20 23:40:12,078 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:12,078 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:12,078 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:12,078 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:12,079 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 107 states, 103 states have (on average 1.0679611650485437) internal successors, (110), 106 states have internal predecessors, (110), 0 states have call successors, (0), 0 states have call 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:12,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 107 states to 107 states and 110 transitions. [2022-02-20 23:40:12,079 INFO L78 Accepts]: Start accepts. Automaton has 107 states and 110 transitions. Word has length 87 [2022-02-20 23:40:12,080 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:12,080 INFO L470 AbstractCegarLoop]: Abstraction has 107 states and 110 transitions. [2022-02-20 23:40:12,080 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 32 states, 31 states have (on average 6.32258064516129) internal successors, (196), 32 states have internal predecessors, (196), 0 states have call successors, (0), 0 states have call 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:12,080 INFO L276 IsEmpty]: Start isEmpty. Operand 107 states and 110 transitions. [2022-02-20 23:40:12,080 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 89 [2022-02-20 23:40:12,080 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:12,081 INFO L514 BasicCegarLoop]: trace histogram [5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:12,120 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:40:12,289 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:12,290 INFO L402 AbstractCegarLoop]: === Iteration 32 === Targeting ULTIMATE.startErr11REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:40:12,290 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:12,290 INFO L85 PathProgramCache]: Analyzing trace with hash -72490111, now seen corresponding path program 4 times [2022-02-20 23:40:12,290 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:12,290 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1805112774] [2022-02-20 23:40:12,290 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:12,290 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:12,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:12,480 INFO L290 TraceCheckUtils]: 0: Hoare triple {14216#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {14216#true} is VALID [2022-02-20 23:40:12,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {14216#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {14216#true} is VALID [2022-02-20 23:40:12,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {14216#true} assume !(main_~length1~0#1 < 1); {14216#true} is VALID [2022-02-20 23:40:12,481 INFO L290 TraceCheckUtils]: 3: Hoare triple {14216#true} assume !(main_~length2~0#1 < 1); {14216#true} is VALID [2022-02-20 23:40:12,482 INFO L290 TraceCheckUtils]: 4: Hoare triple {14216#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,483 INFO L290 TraceCheckUtils]: 5: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,483 INFO L290 TraceCheckUtils]: 6: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,484 INFO L290 TraceCheckUtils]: 7: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,484 INFO L290 TraceCheckUtils]: 8: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,485 INFO L290 TraceCheckUtils]: 9: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,485 INFO L290 TraceCheckUtils]: 10: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,486 INFO L290 TraceCheckUtils]: 11: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,486 INFO L290 TraceCheckUtils]: 12: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,487 INFO L290 TraceCheckUtils]: 13: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,487 INFO L290 TraceCheckUtils]: 14: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,488 INFO L290 TraceCheckUtils]: 15: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,488 INFO L290 TraceCheckUtils]: 16: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,489 INFO L290 TraceCheckUtils]: 17: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,489 INFO L290 TraceCheckUtils]: 18: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,490 INFO L290 TraceCheckUtils]: 19: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet18#1; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,490 INFO L290 TraceCheckUtils]: 20: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,491 INFO L290 TraceCheckUtils]: 21: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,491 INFO L290 TraceCheckUtils]: 22: Hoare triple {14218#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_~i~1#1 := 0; {14219#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,492 INFO L290 TraceCheckUtils]: 23: Hoare triple {14219#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14219#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,492 INFO L290 TraceCheckUtils]: 24: Hoare triple {14219#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14219#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,493 INFO L290 TraceCheckUtils]: 25: Hoare triple {14219#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {14219#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,493 INFO L290 TraceCheckUtils]: 26: Hoare triple {14219#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14220#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} is VALID [2022-02-20 23:40:12,493 INFO L290 TraceCheckUtils]: 27: Hoare triple {14220#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14220#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} is VALID [2022-02-20 23:40:12,494 INFO L290 TraceCheckUtils]: 28: Hoare triple {14220#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14220#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} is VALID [2022-02-20 23:40:12,494 INFO L290 TraceCheckUtils]: 29: Hoare triple {14220#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} havoc main_#t~nondet20#1; {14220#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} is VALID [2022-02-20 23:40:12,495 INFO L290 TraceCheckUtils]: 30: Hoare triple {14220#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length2~0#1| 1) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14221#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:40:12,495 INFO L290 TraceCheckUtils]: 31: Hoare triple {14221#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14221#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:40:12,496 INFO L290 TraceCheckUtils]: 32: Hoare triple {14221#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14221#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:40:12,496 INFO L290 TraceCheckUtils]: 33: Hoare triple {14221#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} havoc main_#t~nondet20#1; {14221#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:40:12,497 INFO L290 TraceCheckUtils]: 34: Hoare triple {14221#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 2) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14222#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:40:12,497 INFO L290 TraceCheckUtils]: 35: Hoare triple {14222#(and (<= (+ |ULTIMATE.start_main_~length2~0#1| 3) (+ |ULTIMATE.start_main_~i~1#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,498 INFO L290 TraceCheckUtils]: 36: Hoare triple {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,498 INFO L290 TraceCheckUtils]: 37: Hoare triple {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet20#1; {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,499 INFO L290 TraceCheckUtils]: 38: Hoare triple {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,499 INFO L290 TraceCheckUtils]: 39: Hoare triple {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,500 INFO L290 TraceCheckUtils]: 40: Hoare triple {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,500 INFO L290 TraceCheckUtils]: 41: Hoare triple {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:12,501 INFO L290 TraceCheckUtils]: 42: Hoare triple {14223#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,501 INFO L290 TraceCheckUtils]: 43: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(0 == cstrncmp_~n#1); {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,502 INFO L290 TraceCheckUtils]: 44: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,502 INFO L290 TraceCheckUtils]: 45: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,503 INFO L290 TraceCheckUtils]: 46: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,503 INFO L290 TraceCheckUtils]: 47: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,504 INFO L290 TraceCheckUtils]: 48: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,504 INFO L290 TraceCheckUtils]: 49: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,505 INFO L290 TraceCheckUtils]: 50: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,505 INFO L290 TraceCheckUtils]: 51: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,505 INFO L290 TraceCheckUtils]: 52: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,506 INFO L290 TraceCheckUtils]: 53: Hoare triple {14224#(and (= |ULTIMATE.start_cstrncmp_~s2#1.offset| 0) (<= 5 (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,506 INFO L290 TraceCheckUtils]: 54: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,507 INFO L290 TraceCheckUtils]: 55: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,507 INFO L290 TraceCheckUtils]: 56: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,508 INFO L290 TraceCheckUtils]: 57: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,508 INFO L290 TraceCheckUtils]: 58: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,508 INFO L290 TraceCheckUtils]: 59: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,509 INFO L290 TraceCheckUtils]: 60: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,509 INFO L290 TraceCheckUtils]: 61: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,510 INFO L290 TraceCheckUtils]: 62: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,510 INFO L290 TraceCheckUtils]: 63: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,511 INFO L290 TraceCheckUtils]: 64: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,511 INFO L290 TraceCheckUtils]: 65: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,512 INFO L290 TraceCheckUtils]: 66: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,512 INFO L290 TraceCheckUtils]: 67: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,513 INFO L290 TraceCheckUtils]: 68: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,513 INFO L290 TraceCheckUtils]: 69: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,513 INFO L290 TraceCheckUtils]: 70: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,514 INFO L290 TraceCheckUtils]: 71: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,514 INFO L290 TraceCheckUtils]: 72: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,515 INFO L290 TraceCheckUtils]: 73: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,515 INFO L290 TraceCheckUtils]: 74: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,516 INFO L290 TraceCheckUtils]: 75: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,516 INFO L290 TraceCheckUtils]: 76: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,517 INFO L290 TraceCheckUtils]: 77: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,517 INFO L290 TraceCheckUtils]: 78: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,517 INFO L290 TraceCheckUtils]: 79: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,518 INFO L290 TraceCheckUtils]: 80: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,518 INFO L290 TraceCheckUtils]: 81: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,519 INFO L290 TraceCheckUtils]: 82: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,519 INFO L290 TraceCheckUtils]: 83: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,520 INFO L290 TraceCheckUtils]: 84: Hoare triple {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,520 INFO L290 TraceCheckUtils]: 85: Hoare triple {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,521 INFO L290 TraceCheckUtils]: 86: Hoare triple {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:12,521 INFO L290 TraceCheckUtils]: 87: Hoare triple {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {14217#false} is VALID [2022-02-20 23:40:12,522 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 6 proven. 98 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:12,522 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:12,522 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1805112774] [2022-02-20 23:40:12,522 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1805112774] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:40:12,522 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [37931112] [2022-02-20 23:40:12,522 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:40:12,522 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:12,522 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:12,528 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:40:12,529 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:40:12,654 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:40:12,655 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:40:12,656 INFO L263 TraceCheckSpWp]: Trace formula consists of 370 conjuncts, 32 conjunts are in the unsatisfiable core [2022-02-20 23:40:12,672 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:12,673 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 0: Hoare triple {14216#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 1: Hoare triple {14216#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 2: Hoare triple {14216#true} assume !(main_~length1~0#1 < 1); {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 3: Hoare triple {14216#true} assume !(main_~length2~0#1 < 1); {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 4: Hoare triple {14216#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 5: Hoare triple {14216#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 6: Hoare triple {14216#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 7: Hoare triple {14216#true} havoc main_#t~nondet18#1; {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 8: Hoare triple {14216#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 9: Hoare triple {14216#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 10: Hoare triple {14216#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14216#true} is VALID [2022-02-20 23:40:13,395 INFO L290 TraceCheckUtils]: 11: Hoare triple {14216#true} havoc main_#t~nondet18#1; {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 12: Hoare triple {14216#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 13: Hoare triple {14216#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 14: Hoare triple {14216#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 15: Hoare triple {14216#true} havoc main_#t~nondet18#1; {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 16: Hoare triple {14216#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 17: Hoare triple {14216#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 18: Hoare triple {14216#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 19: Hoare triple {14216#true} havoc main_#t~nondet18#1; {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 20: Hoare triple {14216#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 21: Hoare triple {14216#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {14216#true} is VALID [2022-02-20 23:40:13,396 INFO L290 TraceCheckUtils]: 22: Hoare triple {14216#true} main_~i~1#1 := 0; {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,397 INFO L290 TraceCheckUtils]: 23: Hoare triple {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,397 INFO L290 TraceCheckUtils]: 24: Hoare triple {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,397 INFO L290 TraceCheckUtils]: 25: Hoare triple {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,398 INFO L290 TraceCheckUtils]: 26: Hoare triple {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,398 INFO L290 TraceCheckUtils]: 27: Hoare triple {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,398 INFO L290 TraceCheckUtils]: 28: Hoare triple {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,398 INFO L290 TraceCheckUtils]: 29: Hoare triple {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,399 INFO L290 TraceCheckUtils]: 30: Hoare triple {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,399 INFO L290 TraceCheckUtils]: 31: Hoare triple {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,399 INFO L290 TraceCheckUtils]: 32: Hoare triple {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,400 INFO L290 TraceCheckUtils]: 33: Hoare triple {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,400 INFO L290 TraceCheckUtils]: 34: Hoare triple {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14337#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:13,401 INFO L290 TraceCheckUtils]: 35: Hoare triple {14337#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:13,401 INFO L290 TraceCheckUtils]: 36: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:13,401 INFO L290 TraceCheckUtils]: 37: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet20#1; {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:13,401 INFO L290 TraceCheckUtils]: 38: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:13,402 INFO L290 TraceCheckUtils]: 39: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:13,402 INFO L290 TraceCheckUtils]: 40: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:13,402 INFO L290 TraceCheckUtils]: 41: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {14360#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} is VALID [2022-02-20 23:40:13,403 INFO L290 TraceCheckUtils]: 42: Hoare triple {14360#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:40:13,403 INFO L290 TraceCheckUtils]: 43: Hoare triple {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume !(0 == cstrncmp_~n#1); {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:40:13,404 INFO L290 TraceCheckUtils]: 44: Hoare triple {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:40:13,404 INFO L290 TraceCheckUtils]: 45: Hoare triple {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} assume cstrncmp_#t~short5#1; {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:40:13,405 INFO L290 TraceCheckUtils]: 46: Hoare triple {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} is VALID [2022-02-20 23:40:13,405 INFO L290 TraceCheckUtils]: 47: Hoare triple {14364#(< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:13,405 INFO L290 TraceCheckUtils]: 48: Hoare triple {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:13,406 INFO L290 TraceCheckUtils]: 49: Hoare triple {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:13,406 INFO L290 TraceCheckUtils]: 50: Hoare triple {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1; {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:13,407 INFO L290 TraceCheckUtils]: 51: Hoare triple {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:13,407 INFO L290 TraceCheckUtils]: 52: Hoare triple {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:13,408 INFO L290 TraceCheckUtils]: 53: Hoare triple {14380#(and (< (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,408 INFO L290 TraceCheckUtils]: 54: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,408 INFO L290 TraceCheckUtils]: 55: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,409 INFO L290 TraceCheckUtils]: 56: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,409 INFO L290 TraceCheckUtils]: 57: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,410 INFO L290 TraceCheckUtils]: 58: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,410 INFO L290 TraceCheckUtils]: 59: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,410 INFO L290 TraceCheckUtils]: 60: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,411 INFO L290 TraceCheckUtils]: 61: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,411 INFO L290 TraceCheckUtils]: 62: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,412 INFO L290 TraceCheckUtils]: 63: Hoare triple {14225#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,412 INFO L290 TraceCheckUtils]: 64: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,413 INFO L290 TraceCheckUtils]: 65: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,413 INFO L290 TraceCheckUtils]: 66: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,413 INFO L290 TraceCheckUtils]: 67: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,414 INFO L290 TraceCheckUtils]: 68: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,414 INFO L290 TraceCheckUtils]: 69: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,415 INFO L290 TraceCheckUtils]: 70: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,415 INFO L290 TraceCheckUtils]: 71: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,415 INFO L290 TraceCheckUtils]: 72: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,416 INFO L290 TraceCheckUtils]: 73: Hoare triple {14226#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,416 INFO L290 TraceCheckUtils]: 74: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,417 INFO L290 TraceCheckUtils]: 75: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,417 INFO L290 TraceCheckUtils]: 76: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,418 INFO L290 TraceCheckUtils]: 77: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,418 INFO L290 TraceCheckUtils]: 78: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,418 INFO L290 TraceCheckUtils]: 79: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,419 INFO L290 TraceCheckUtils]: 80: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,419 INFO L290 TraceCheckUtils]: 81: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,420 INFO L290 TraceCheckUtils]: 82: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,420 INFO L290 TraceCheckUtils]: 83: Hoare triple {14227#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,421 INFO L290 TraceCheckUtils]: 84: Hoare triple {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,421 INFO L290 TraceCheckUtils]: 85: Hoare triple {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,421 INFO L290 TraceCheckUtils]: 86: Hoare triple {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:13,422 INFO L290 TraceCheckUtils]: 87: Hoare triple {14228#(and (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {14217#false} is VALID [2022-02-20 23:40:13,422 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 15 proven. 89 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:13,422 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:13,930 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:14,015 INFO L290 TraceCheckUtils]: 87: Hoare triple {14501#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !(1 + cstrncmp_~s2#1.offset <= #length[cstrncmp_~s2#1.base] && 0 <= cstrncmp_~s2#1.offset); {14217#false} is VALID [2022-02-20 23:40:14,015 INFO L290 TraceCheckUtils]: 86: Hoare triple {14501#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14501#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:14,015 INFO L290 TraceCheckUtils]: 85: Hoare triple {14501#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume cstrncmp_#t~short5#1; {14501#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:14,016 INFO L290 TraceCheckUtils]: 84: Hoare triple {14501#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14501#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:14,016 INFO L290 TraceCheckUtils]: 83: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14501#(and (<= (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:14,017 INFO L290 TraceCheckUtils]: 82: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,017 INFO L290 TraceCheckUtils]: 81: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,018 INFO L290 TraceCheckUtils]: 80: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !cstrncmp_#t~short7#1; {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,018 INFO L290 TraceCheckUtils]: 79: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,018 INFO L290 TraceCheckUtils]: 78: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,019 INFO L290 TraceCheckUtils]: 77: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,019 INFO L290 TraceCheckUtils]: 76: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,019 INFO L290 TraceCheckUtils]: 75: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} assume cstrncmp_#t~short5#1; {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,020 INFO L290 TraceCheckUtils]: 74: Hoare triple {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,020 INFO L290 TraceCheckUtils]: 73: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14514#(and (<= (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)))} is VALID [2022-02-20 23:40:14,020 INFO L290 TraceCheckUtils]: 72: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,021 INFO L290 TraceCheckUtils]: 71: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,021 INFO L290 TraceCheckUtils]: 70: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !cstrncmp_#t~short7#1; {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,022 INFO L290 TraceCheckUtils]: 69: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,022 INFO L290 TraceCheckUtils]: 68: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,022 INFO L290 TraceCheckUtils]: 67: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,023 INFO L290 TraceCheckUtils]: 66: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,023 INFO L290 TraceCheckUtils]: 65: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume cstrncmp_#t~short5#1; {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,023 INFO L290 TraceCheckUtils]: 64: Hoare triple {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,024 INFO L290 TraceCheckUtils]: 63: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14545#(and (<= (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,024 INFO L290 TraceCheckUtils]: 62: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,025 INFO L290 TraceCheckUtils]: 61: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,025 INFO L290 TraceCheckUtils]: 60: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !cstrncmp_#t~short7#1; {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,025 INFO L290 TraceCheckUtils]: 59: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,026 INFO L290 TraceCheckUtils]: 58: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,026 INFO L290 TraceCheckUtils]: 57: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,026 INFO L290 TraceCheckUtils]: 56: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,027 INFO L290 TraceCheckUtils]: 55: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} assume cstrncmp_#t~short5#1; {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,027 INFO L290 TraceCheckUtils]: 54: Hoare triple {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,027 INFO L290 TraceCheckUtils]: 53: Hoare triple {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {14576#(and (<= (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)) (<= 0 (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))} is VALID [2022-02-20 23:40:14,028 INFO L290 TraceCheckUtils]: 52: Hoare triple {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,028 INFO L290 TraceCheckUtils]: 51: Hoare triple {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,029 INFO L290 TraceCheckUtils]: 50: Hoare triple {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !cstrncmp_#t~short7#1; {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,029 INFO L290 TraceCheckUtils]: 49: Hoare triple {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,029 INFO L290 TraceCheckUtils]: 48: Hoare triple {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,030 INFO L290 TraceCheckUtils]: 47: Hoare triple {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {14607#(and (<= 0 (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,030 INFO L290 TraceCheckUtils]: 46: Hoare triple {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,030 INFO L290 TraceCheckUtils]: 45: Hoare triple {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume cstrncmp_#t~short5#1; {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,031 INFO L290 TraceCheckUtils]: 44: Hoare triple {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,031 INFO L290 TraceCheckUtils]: 43: Hoare triple {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} assume !(0 == cstrncmp_~n#1); {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,032 INFO L290 TraceCheckUtils]: 42: Hoare triple {14642#(or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {14626#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (<= (+ 5 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrncmp_~s2#1.base|)))} is VALID [2022-02-20 23:40:14,032 INFO L290 TraceCheckUtils]: 41: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {14642#(or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 5) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} is VALID [2022-02-20 23:40:14,032 INFO L290 TraceCheckUtils]: 40: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:14,032 INFO L290 TraceCheckUtils]: 39: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:14,033 INFO L290 TraceCheckUtils]: 38: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:14,033 INFO L290 TraceCheckUtils]: 37: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet20#1; {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:14,033 INFO L290 TraceCheckUtils]: 36: Hoare triple {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:14,033 INFO L290 TraceCheckUtils]: 35: Hoare triple {14337#(<= 3 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14341#(< 4 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:40:14,034 INFO L290 TraceCheckUtils]: 34: Hoare triple {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14337#(<= 3 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,034 INFO L290 TraceCheckUtils]: 33: Hoare triple {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,034 INFO L290 TraceCheckUtils]: 32: Hoare triple {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,034 INFO L290 TraceCheckUtils]: 31: Hoare triple {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,035 INFO L290 TraceCheckUtils]: 30: Hoare triple {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14324#(<= 2 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,035 INFO L290 TraceCheckUtils]: 29: Hoare triple {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,035 INFO L290 TraceCheckUtils]: 28: Hoare triple {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,035 INFO L290 TraceCheckUtils]: 27: Hoare triple {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,036 INFO L290 TraceCheckUtils]: 26: Hoare triple {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {14311#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,036 INFO L290 TraceCheckUtils]: 25: Hoare triple {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet20#1; {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,036 INFO L290 TraceCheckUtils]: 24: Hoare triple {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,037 INFO L290 TraceCheckUtils]: 23: Hoare triple {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,037 INFO L290 TraceCheckUtils]: 22: Hoare triple {14216#true} main_~i~1#1 := 0; {14298#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:40:14,037 INFO L290 TraceCheckUtils]: 21: Hoare triple {14216#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {14216#true} is VALID [2022-02-20 23:40:14,037 INFO L290 TraceCheckUtils]: 20: Hoare triple {14216#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14216#true} is VALID [2022-02-20 23:40:14,037 INFO L290 TraceCheckUtils]: 19: Hoare triple {14216#true} havoc main_#t~nondet18#1; {14216#true} is VALID [2022-02-20 23:40:14,037 INFO L290 TraceCheckUtils]: 18: Hoare triple {14216#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14216#true} is VALID [2022-02-20 23:40:14,037 INFO L290 TraceCheckUtils]: 17: Hoare triple {14216#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14216#true} is VALID [2022-02-20 23:40:14,037 INFO L290 TraceCheckUtils]: 16: Hoare triple {14216#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 15: Hoare triple {14216#true} havoc main_#t~nondet18#1; {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 14: Hoare triple {14216#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 13: Hoare triple {14216#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 12: Hoare triple {14216#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 11: Hoare triple {14216#true} havoc main_#t~nondet18#1; {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 10: Hoare triple {14216#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {14216#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 8: Hoare triple {14216#true} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 7: Hoare triple {14216#true} havoc main_#t~nondet18#1; {14216#true} is VALID [2022-02-20 23:40:14,038 INFO L290 TraceCheckUtils]: 6: Hoare triple {14216#true} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14216#true} is VALID [2022-02-20 23:40:14,039 INFO L290 TraceCheckUtils]: 5: Hoare triple {14216#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {14216#true} is VALID [2022-02-20 23:40:14,039 INFO L290 TraceCheckUtils]: 4: Hoare triple {14216#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {14216#true} is VALID [2022-02-20 23:40:14,039 INFO L290 TraceCheckUtils]: 3: Hoare triple {14216#true} assume !(main_~length2~0#1 < 1); {14216#true} is VALID [2022-02-20 23:40:14,039 INFO L290 TraceCheckUtils]: 2: Hoare triple {14216#true} assume !(main_~length1~0#1 < 1); {14216#true} is VALID [2022-02-20 23:40:14,039 INFO L290 TraceCheckUtils]: 1: Hoare triple {14216#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {14216#true} is VALID [2022-02-20 23:40:14,039 INFO L290 TraceCheckUtils]: 0: Hoare triple {14216#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {14216#true} is VALID [2022-02-20 23:40:14,039 INFO L134 CoverageAnalysis]: Checked inductivity of 132 backedges. 15 proven. 89 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:14,040 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [37931112] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:14,040 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:40:14,040 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 13] total 27 [2022-02-20 23:40:14,040 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [253726050] [2022-02-20 23:40:14,040 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:14,041 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 5.962962962962963) internal successors, (161), 28 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 88 [2022-02-20 23:40:14,041 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:14,041 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 28 states, 27 states have (on average 5.962962962962963) internal successors, (161), 28 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:14,169 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:14,169 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-02-20 23:40:14,169 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:14,169 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-02-20 23:40:14,169 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=95, Invalid=661, Unknown=0, NotChecked=0, Total=756 [2022-02-20 23:40:14,170 INFO L87 Difference]: Start difference. First operand 107 states and 110 transitions. Second operand has 28 states, 27 states have (on average 5.962962962962963) internal successors, (161), 28 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:15,476 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:15,477 INFO L93 Difference]: Finished difference Result 116 states and 118 transitions. [2022-02-20 23:40:15,477 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 23:40:15,477 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 27 states have (on average 5.962962962962963) internal successors, (161), 28 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 88 [2022-02-20 23:40:15,477 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:15,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 5.962962962962963) internal successors, (161), 28 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:15,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 107 transitions. [2022-02-20 23:40:15,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 27 states have (on average 5.962962962962963) internal successors, (161), 28 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:15,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 107 transitions. [2022-02-20 23:40:15,478 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 107 transitions. [2022-02-20 23:40:15,561 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:15,562 INFO L225 Difference]: With dead ends: 116 [2022-02-20 23:40:15,562 INFO L226 Difference]: Without dead ends: 112 [2022-02-20 23:40:15,562 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 196 GetRequests, 158 SyntacticMatches, 2 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 212 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=276, Invalid=1130, Unknown=0, NotChecked=0, Total=1406 [2022-02-20 23:40:15,562 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 576 mSDsluCounter, 397 mSDsCounter, 0 mSdLazyCounter, 440 mSolverCounterSat, 54 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 576 SdHoareTripleChecker+Valid, 445 SdHoareTripleChecker+Invalid, 494 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 54 IncrementalHoareTripleChecker+Valid, 440 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:15,563 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [576 Valid, 445 Invalid, 494 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [54 Valid, 440 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-02-20 23:40:15,563 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 112 states. [2022-02-20 23:40:15,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 112 to 106. [2022-02-20 23:40:15,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:15,564 INFO L82 GeneralOperation]: Start isEquivalent. First operand 112 states. Second operand has 106 states, 102 states have (on average 1.0588235294117647) internal successors, (108), 105 states have internal predecessors, (108), 0 states have call successors, (0), 0 states have call 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:15,565 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand has 106 states, 102 states have (on average 1.0588235294117647) internal successors, (108), 105 states have internal predecessors, (108), 0 states have call successors, (0), 0 states have call 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:15,565 INFO L87 Difference]: Start difference. First operand 112 states. Second operand has 106 states, 102 states have (on average 1.0588235294117647) internal successors, (108), 105 states have internal predecessors, (108), 0 states have call successors, (0), 0 states have call 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:15,566 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:15,566 INFO L93 Difference]: Finished difference Result 112 states and 114 transitions. [2022-02-20 23:40:15,566 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 114 transitions. [2022-02-20 23:40:15,566 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:15,566 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:15,566 INFO L74 IsIncluded]: Start isIncluded. First operand has 106 states, 102 states have (on average 1.0588235294117647) internal successors, (108), 105 states have internal predecessors, (108), 0 states have call successors, (0), 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 112 states. [2022-02-20 23:40:15,566 INFO L87 Difference]: Start difference. First operand has 106 states, 102 states have (on average 1.0588235294117647) internal successors, (108), 105 states have internal predecessors, (108), 0 states have call successors, (0), 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 112 states. [2022-02-20 23:40:15,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:15,567 INFO L93 Difference]: Finished difference Result 112 states and 114 transitions. [2022-02-20 23:40:15,567 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 114 transitions. [2022-02-20 23:40:15,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:15,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:15,567 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:15,567 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:15,567 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 106 states, 102 states have (on average 1.0588235294117647) internal successors, (108), 105 states have internal predecessors, (108), 0 states have call successors, (0), 0 states have call 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:15,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 106 states to 106 states and 108 transitions. [2022-02-20 23:40:15,568 INFO L78 Accepts]: Start accepts. Automaton has 106 states and 108 transitions. Word has length 88 [2022-02-20 23:40:15,569 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:15,569 INFO L470 AbstractCegarLoop]: Abstraction has 106 states and 108 transitions. [2022-02-20 23:40:15,569 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 27 states have (on average 5.962962962962963) internal successors, (161), 28 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:40:15,569 INFO L276 IsEmpty]: Start isEmpty. Operand 106 states and 108 transitions. [2022-02-20 23:40:15,569 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-02-20 23:40:15,569 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:15,570 INFO L514 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 5, 5, 5, 5, 5, 5, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:40:15,592 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:40:15,783 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,SelfDestructingSolverStorable31 [2022-02-20 23:40:15,783 INFO L402 AbstractCegarLoop]: === Iteration 33 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:40:15,784 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:15,784 INFO L85 PathProgramCache]: Analyzing trace with hash 1990120664, now seen corresponding path program 7 times [2022-02-20 23:40:15,784 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:15,784 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [486432611] [2022-02-20 23:40:15,784 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:15,784 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:15,838 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:16,091 INFO L290 TraceCheckUtils]: 0: Hoare triple {15234#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {15234#true} is VALID [2022-02-20 23:40:16,091 INFO L290 TraceCheckUtils]: 1: Hoare triple {15234#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {15234#true} is VALID [2022-02-20 23:40:16,091 INFO L290 TraceCheckUtils]: 2: Hoare triple {15234#true} assume !(main_~length1~0#1 < 1); {15234#true} is VALID [2022-02-20 23:40:16,091 INFO L290 TraceCheckUtils]: 3: Hoare triple {15234#true} assume !(main_~length2~0#1 < 1); {15234#true} is VALID [2022-02-20 23:40:16,092 INFO L290 TraceCheckUtils]: 4: Hoare triple {15234#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {15236#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,092 INFO L290 TraceCheckUtils]: 5: Hoare triple {15236#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15236#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,093 INFO L290 TraceCheckUtils]: 6: Hoare triple {15236#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15236#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,093 INFO L290 TraceCheckUtils]: 7: Hoare triple {15236#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {15236#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,094 INFO L290 TraceCheckUtils]: 8: Hoare triple {15236#(and (= |ULTIMATE.start_main_~i~0#1| 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15237#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:40:16,094 INFO L290 TraceCheckUtils]: 9: Hoare triple {15237#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15237#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:40:16,095 INFO L290 TraceCheckUtils]: 10: Hoare triple {15237#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15237#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:40:16,095 INFO L290 TraceCheckUtils]: 11: Hoare triple {15237#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet18#1; {15237#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:40:16,095 INFO L290 TraceCheckUtils]: 12: Hoare triple {15237#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15238#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:16,096 INFO L290 TraceCheckUtils]: 13: Hoare triple {15238#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15238#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:16,096 INFO L290 TraceCheckUtils]: 14: Hoare triple {15238#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15238#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:16,097 INFO L290 TraceCheckUtils]: 15: Hoare triple {15238#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} havoc main_#t~nondet18#1; {15238#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:16,097 INFO L290 TraceCheckUtils]: 16: Hoare triple {15238#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15239#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,098 INFO L290 TraceCheckUtils]: 17: Hoare triple {15239#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 3 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15240#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,098 INFO L290 TraceCheckUtils]: 18: Hoare triple {15240#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15240#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,099 INFO L290 TraceCheckUtils]: 19: Hoare triple {15240#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet18#1; {15240#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,099 INFO L290 TraceCheckUtils]: 20: Hoare triple {15240#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 3) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15241#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,100 INFO L290 TraceCheckUtils]: 21: Hoare triple {15241#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 4) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,100 INFO L290 TraceCheckUtils]: 22: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,101 INFO L290 TraceCheckUtils]: 23: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,101 INFO L290 TraceCheckUtils]: 24: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,101 INFO L290 TraceCheckUtils]: 25: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,102 INFO L290 TraceCheckUtils]: 26: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,102 INFO L290 TraceCheckUtils]: 27: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,103 INFO L290 TraceCheckUtils]: 28: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,103 INFO L290 TraceCheckUtils]: 29: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,104 INFO L290 TraceCheckUtils]: 30: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,104 INFO L290 TraceCheckUtils]: 31: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,105 INFO L290 TraceCheckUtils]: 32: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,105 INFO L290 TraceCheckUtils]: 33: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,105 INFO L290 TraceCheckUtils]: 34: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,106 INFO L290 TraceCheckUtils]: 35: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,106 INFO L290 TraceCheckUtils]: 36: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,107 INFO L290 TraceCheckUtils]: 37: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet20#1; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,107 INFO L290 TraceCheckUtils]: 38: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,107 INFO L290 TraceCheckUtils]: 39: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,108 INFO L290 TraceCheckUtils]: 40: Hoare triple {15242#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| 5) (<= 5 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {15243#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)) 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,109 INFO L290 TraceCheckUtils]: 41: Hoare triple {15243#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)) 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {15243#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)) 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:16,109 INFO L290 TraceCheckUtils]: 42: Hoare triple {15243#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 4)) 0) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,110 INFO L290 TraceCheckUtils]: 43: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} assume !(0 == cstrncmp_~n#1); {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,110 INFO L290 TraceCheckUtils]: 44: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,110 INFO L290 TraceCheckUtils]: 45: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} assume cstrncmp_#t~short5#1; {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,111 INFO L290 TraceCheckUtils]: 46: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,111 INFO L290 TraceCheckUtils]: 47: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,112 INFO L290 TraceCheckUtils]: 48: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,112 INFO L290 TraceCheckUtils]: 49: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,113 INFO L290 TraceCheckUtils]: 50: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} assume !cstrncmp_#t~short7#1; {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,113 INFO L290 TraceCheckUtils]: 51: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,113 INFO L290 TraceCheckUtils]: 52: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} is VALID [2022-02-20 23:40:16,114 INFO L290 TraceCheckUtils]: 53: Hoare triple {15244#(and (= |ULTIMATE.start_cstrncmp_~s1#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) 4) 0))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,114 INFO L290 TraceCheckUtils]: 54: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,115 INFO L290 TraceCheckUtils]: 55: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume cstrncmp_#t~short5#1; {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,115 INFO L290 TraceCheckUtils]: 56: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,115 INFO L290 TraceCheckUtils]: 57: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,116 INFO L290 TraceCheckUtils]: 58: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,116 INFO L290 TraceCheckUtils]: 59: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,116 INFO L290 TraceCheckUtils]: 60: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !cstrncmp_#t~short7#1; {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,117 INFO L290 TraceCheckUtils]: 61: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,117 INFO L290 TraceCheckUtils]: 62: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,118 INFO L290 TraceCheckUtils]: 63: Hoare triple {15245#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,118 INFO L290 TraceCheckUtils]: 64: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,119 INFO L290 TraceCheckUtils]: 65: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume cstrncmp_#t~short5#1; {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,119 INFO L290 TraceCheckUtils]: 66: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,119 INFO L290 TraceCheckUtils]: 67: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,120 INFO L290 TraceCheckUtils]: 68: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,120 INFO L290 TraceCheckUtils]: 69: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,120 INFO L290 TraceCheckUtils]: 70: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !cstrncmp_#t~short7#1; {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,121 INFO L290 TraceCheckUtils]: 71: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,121 INFO L290 TraceCheckUtils]: 72: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} is VALID [2022-02-20 23:40:16,122 INFO L290 TraceCheckUtils]: 73: Hoare triple {15246#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s1#1.offset|)) 0)} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,122 INFO L290 TraceCheckUtils]: 74: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,122 INFO L290 TraceCheckUtils]: 75: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume cstrncmp_#t~short5#1; {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,123 INFO L290 TraceCheckUtils]: 76: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,123 INFO L290 TraceCheckUtils]: 77: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,123 INFO L290 TraceCheckUtils]: 78: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,123 INFO L290 TraceCheckUtils]: 79: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,124 INFO L290 TraceCheckUtils]: 80: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !cstrncmp_#t~short7#1; {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,124 INFO L290 TraceCheckUtils]: 81: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,124 INFO L290 TraceCheckUtils]: 82: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} is VALID [2022-02-20 23:40:16,125 INFO L290 TraceCheckUtils]: 83: Hoare triple {15247#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) (+ |ULTIMATE.start_cstrncmp_~s1#1.offset| 1)) 0)} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:16,125 INFO L290 TraceCheckUtils]: 84: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:16,125 INFO L290 TraceCheckUtils]: 85: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume cstrncmp_#t~short5#1; {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:16,126 INFO L290 TraceCheckUtils]: 86: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:16,126 INFO L290 TraceCheckUtils]: 87: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:16,126 INFO L290 TraceCheckUtils]: 88: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:16,127 INFO L290 TraceCheckUtils]: 89: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:16,127 INFO L290 TraceCheckUtils]: 90: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:16,127 INFO L290 TraceCheckUtils]: 91: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15249#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:40:16,128 INFO L290 TraceCheckUtils]: 92: Hoare triple {15249#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15250#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:40:16,128 INFO L290 TraceCheckUtils]: 93: Hoare triple {15250#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15235#false} is VALID [2022-02-20 23:40:16,128 INFO L290 TraceCheckUtils]: 94: Hoare triple {15235#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15235#false} is VALID [2022-02-20 23:40:16,128 INFO L290 TraceCheckUtils]: 95: Hoare triple {15235#false} assume cstrncmp_#t~short5#1; {15235#false} is VALID [2022-02-20 23:40:16,128 INFO L290 TraceCheckUtils]: 96: Hoare triple {15235#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {15235#false} is VALID [2022-02-20 23:40:16,128 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 15 proven. 128 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:16,128 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:16,129 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [486432611] [2022-02-20 23:40:16,129 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [486432611] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:40:16,129 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [342590814] [2022-02-20 23:40:16,129 INFO L93 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2022-02-20 23:40:16,129 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:16,129 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:16,140 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:40:16,149 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:40:16,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:16,266 INFO L263 TraceCheckSpWp]: Trace formula consists of 402 conjuncts, 52 conjunts are in the unsatisfiable core [2022-02-20 23:40:16,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:16,284 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:16,851 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 10 [2022-02-20 23:40:27,768 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:40:27,773 INFO L356 Elim1Store]: treesize reduction 28, result has 9.7 percent of original size [2022-02-20 23:40:27,773 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 29 treesize of output 13 [2022-02-20 23:40:27,833 INFO L290 TraceCheckUtils]: 0: Hoare triple {15234#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {15234#true} is VALID [2022-02-20 23:40:27,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {15234#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {15234#true} is VALID [2022-02-20 23:40:27,833 INFO L290 TraceCheckUtils]: 2: Hoare triple {15234#true} assume !(main_~length1~0#1 < 1); {15234#true} is VALID [2022-02-20 23:40:27,833 INFO L290 TraceCheckUtils]: 3: Hoare triple {15234#true} assume !(main_~length2~0#1 < 1); {15234#true} is VALID [2022-02-20 23:40:27,834 INFO L290 TraceCheckUtils]: 4: Hoare triple {15234#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,834 INFO L290 TraceCheckUtils]: 5: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,834 INFO L290 TraceCheckUtils]: 6: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,835 INFO L290 TraceCheckUtils]: 7: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet18#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,835 INFO L290 TraceCheckUtils]: 8: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,835 INFO L290 TraceCheckUtils]: 9: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,836 INFO L290 TraceCheckUtils]: 10: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,836 INFO L290 TraceCheckUtils]: 11: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet18#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,836 INFO L290 TraceCheckUtils]: 12: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,836 INFO L290 TraceCheckUtils]: 13: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,837 INFO L290 TraceCheckUtils]: 14: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,837 INFO L290 TraceCheckUtils]: 15: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet18#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,837 INFO L290 TraceCheckUtils]: 16: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,837 INFO L290 TraceCheckUtils]: 17: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,838 INFO L290 TraceCheckUtils]: 18: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,838 INFO L290 TraceCheckUtils]: 19: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet18#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,838 INFO L290 TraceCheckUtils]: 20: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,839 INFO L290 TraceCheckUtils]: 21: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:27,839 INFO L290 TraceCheckUtils]: 22: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_~i~1#1 := 0; {15321#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:40:27,839 INFO L290 TraceCheckUtils]: 23: Hoare triple {15321#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15321#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:40:27,840 INFO L290 TraceCheckUtils]: 24: Hoare triple {15321#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15321#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:40:27,840 INFO L290 TraceCheckUtils]: 25: Hoare triple {15321#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} havoc main_#t~nondet20#1; {15321#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:40:27,840 INFO L290 TraceCheckUtils]: 26: Hoare triple {15321#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15334#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:40:27,841 INFO L290 TraceCheckUtils]: 27: Hoare triple {15334#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15334#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:40:27,841 INFO L290 TraceCheckUtils]: 28: Hoare triple {15334#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15334#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:40:27,842 INFO L290 TraceCheckUtils]: 29: Hoare triple {15334#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0))} havoc main_#t~nondet20#1; {15334#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0))} is VALID [2022-02-20 23:40:27,842 INFO L290 TraceCheckUtils]: 30: Hoare triple {15334#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 0))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15347#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:40:27,842 INFO L290 TraceCheckUtils]: 31: Hoare triple {15347#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 |ULTIMATE.start_main_~i~1#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15347#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:40:27,843 INFO L290 TraceCheckUtils]: 32: Hoare triple {15347#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15347#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:40:27,843 INFO L290 TraceCheckUtils]: 33: Hoare triple {15347#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 |ULTIMATE.start_main_~i~1#1|))} havoc main_#t~nondet20#1; {15347#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:40:27,843 INFO L290 TraceCheckUtils]: 34: Hoare triple {15347#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 |ULTIMATE.start_main_~i~1#1|))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15360#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 2))} is VALID [2022-02-20 23:40:27,844 INFO L290 TraceCheckUtils]: 35: Hoare triple {15360#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 2))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15364#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 2))} is VALID [2022-02-20 23:40:27,844 INFO L290 TraceCheckUtils]: 36: Hoare triple {15364#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 2))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15364#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 2))} is VALID [2022-02-20 23:40:27,845 INFO L290 TraceCheckUtils]: 37: Hoare triple {15364#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 2))} havoc main_#t~nondet20#1; {15364#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 2))} is VALID [2022-02-20 23:40:27,845 INFO L290 TraceCheckUtils]: 38: Hoare triple {15364#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|) (= (+ (- 1) |ULTIMATE.start_main_~i~1#1|) 2))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15374#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 4))} is VALID [2022-02-20 23:40:27,845 INFO L290 TraceCheckUtils]: 39: Hoare triple {15374#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 4))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {15378#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:27,846 INFO L290 TraceCheckUtils]: 40: Hoare triple {15378#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {15378#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:27,847 INFO L290 TraceCheckUtils]: 41: Hoare triple {15378#(and (<= |ULTIMATE.start_main_~length2~0#1| 5) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {15385#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,849 INFO L290 TraceCheckUtils]: 42: Hoare triple {15385#(and (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} is VALID [2022-02-20 23:40:27,851 INFO L290 TraceCheckUtils]: 43: Hoare triple {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} assume !(0 == cstrncmp_~n#1); {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} is VALID [2022-02-20 23:40:27,852 INFO L290 TraceCheckUtils]: 44: Hoare triple {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} is VALID [2022-02-20 23:40:27,854 INFO L290 TraceCheckUtils]: 45: Hoare triple {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} assume cstrncmp_#t~short5#1; {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} is VALID [2022-02-20 23:40:27,855 INFO L290 TraceCheckUtils]: 46: Hoare triple {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} is VALID [2022-02-20 23:40:27,856 INFO L290 TraceCheckUtils]: 47: Hoare triple {15389#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,857 INFO L290 TraceCheckUtils]: 48: Hoare triple {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,858 INFO L290 TraceCheckUtils]: 49: Hoare triple {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,859 INFO L290 TraceCheckUtils]: 50: Hoare triple {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1; {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,861 INFO L290 TraceCheckUtils]: 51: Hoare triple {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,862 INFO L290 TraceCheckUtils]: 52: Hoare triple {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,864 INFO L290 TraceCheckUtils]: 53: Hoare triple {15405#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| |ULTIMATE.start_main_~nondetString2~0#1.offset|))) (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,865 INFO L290 TraceCheckUtils]: 54: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,867 INFO L290 TraceCheckUtils]: 55: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} assume cstrncmp_#t~short5#1; {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,868 INFO L290 TraceCheckUtils]: 56: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,869 INFO L290 TraceCheckUtils]: 57: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,870 INFO L290 TraceCheckUtils]: 58: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,872 INFO L290 TraceCheckUtils]: 59: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,874 INFO L290 TraceCheckUtils]: 60: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} assume !cstrncmp_#t~short7#1; {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,875 INFO L290 TraceCheckUtils]: 61: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,877 INFO L290 TraceCheckUtils]: 62: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:40:27,879 INFO L290 TraceCheckUtils]: 63: Hoare triple {15424#(and (<= 1 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|))))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,880 INFO L290 TraceCheckUtils]: 64: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,881 INFO L290 TraceCheckUtils]: 65: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} assume cstrncmp_#t~short5#1; {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,883 INFO L290 TraceCheckUtils]: 66: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,885 INFO L290 TraceCheckUtils]: 67: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,886 INFO L290 TraceCheckUtils]: 68: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,888 INFO L290 TraceCheckUtils]: 69: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,889 INFO L290 TraceCheckUtils]: 70: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} assume !cstrncmp_#t~short7#1; {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,891 INFO L290 TraceCheckUtils]: 71: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,892 INFO L290 TraceCheckUtils]: 72: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} is VALID [2022-02-20 23:40:27,893 INFO L290 TraceCheckUtils]: 73: Hoare triple {15455#(and (<= 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2)))))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,894 INFO L290 TraceCheckUtils]: 74: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,898 INFO L290 TraceCheckUtils]: 75: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} assume cstrncmp_#t~short5#1; {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,899 INFO L290 TraceCheckUtils]: 76: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,901 INFO L290 TraceCheckUtils]: 77: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,902 INFO L290 TraceCheckUtils]: 78: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,903 INFO L290 TraceCheckUtils]: 79: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,905 INFO L290 TraceCheckUtils]: 80: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} assume !cstrncmp_#t~short7#1; {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,906 INFO L290 TraceCheckUtils]: 81: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,908 INFO L290 TraceCheckUtils]: 82: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} is VALID [2022-02-20 23:40:27,923 INFO L290 TraceCheckUtils]: 83: Hoare triple {15486#(and (<= 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15517#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,925 INFO L290 TraceCheckUtils]: 84: Hoare triple {15517#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15517#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,926 INFO L290 TraceCheckUtils]: 85: Hoare triple {15517#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} assume cstrncmp_#t~short5#1; {15517#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} is VALID [2022-02-20 23:40:27,927 INFO L290 TraceCheckUtils]: 86: Hoare triple {15517#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15527#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} is VALID [2022-02-20 23:40:27,929 INFO L290 TraceCheckUtils]: 87: Hoare triple {15527#(and (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|))) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15531#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_cstrncmp_#t~mem4#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|)))))} is VALID [2022-02-20 23:40:27,930 INFO L290 TraceCheckUtils]: 88: Hoare triple {15531#(and (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) (exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_cstrncmp_#t~mem4#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|)))))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15535#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (or (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) |ULTIMATE.start_cstrncmp_#t~short5#1|) (and (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))))} is VALID [2022-02-20 23:40:27,932 INFO L290 TraceCheckUtils]: 89: Hoare triple {15535#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (or (and (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)) |ULTIMATE.start_cstrncmp_#t~short5#1|) (and (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15539#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))))} is VALID [2022-02-20 23:40:27,934 INFO L290 TraceCheckUtils]: 90: Hoare triple {15539#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))))} assume !cstrncmp_#t~short7#1; {15539#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))))} is VALID [2022-02-20 23:40:27,935 INFO L290 TraceCheckUtils]: 91: Hoare triple {15539#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int) (|ULTIMATE.start_cstrncmp_~s2#1.offset| Int) (|ULTIMATE.start_cstrncmp_~s2#1.base| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 5) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|) (<= |ULTIMATE.start_cstrncmp_~s2#1.offset| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15249#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:40:27,936 INFO L290 TraceCheckUtils]: 92: Hoare triple {15249#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15250#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:40:27,936 INFO L290 TraceCheckUtils]: 93: Hoare triple {15250#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15235#false} is VALID [2022-02-20 23:40:27,936 INFO L290 TraceCheckUtils]: 94: Hoare triple {15235#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15235#false} is VALID [2022-02-20 23:40:27,936 INFO L290 TraceCheckUtils]: 95: Hoare triple {15235#false} assume cstrncmp_#t~short5#1; {15235#false} is VALID [2022-02-20 23:40:27,936 INFO L290 TraceCheckUtils]: 96: Hoare triple {15235#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {15235#false} is VALID [2022-02-20 23:40:27,937 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 15 proven. 128 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:27,937 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:31,392 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:40:31,392 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 91 treesize of output 91 [2022-02-20 23:40:31,442 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 36 treesize of output 32 [2022-02-20 23:40:32,235 INFO L290 TraceCheckUtils]: 96: Hoare triple {15235#false} assume !(1 + cstrncmp_~s1#1.offset <= #length[cstrncmp_~s1#1.base] && 0 <= cstrncmp_~s1#1.offset); {15235#false} is VALID [2022-02-20 23:40:32,235 INFO L290 TraceCheckUtils]: 95: Hoare triple {15235#false} assume cstrncmp_#t~short5#1; {15235#false} is VALID [2022-02-20 23:40:32,235 INFO L290 TraceCheckUtils]: 94: Hoare triple {15235#false} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15235#false} is VALID [2022-02-20 23:40:32,236 INFO L290 TraceCheckUtils]: 93: Hoare triple {15250#|ULTIMATE.start_cstrncmp_#t~short7#1|} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15235#false} is VALID [2022-02-20 23:40:32,236 INFO L290 TraceCheckUtils]: 92: Hoare triple {15249#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15250#|ULTIMATE.start_cstrncmp_#t~short7#1|} is VALID [2022-02-20 23:40:32,236 INFO L290 TraceCheckUtils]: 91: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15249#(= |ULTIMATE.start_cstrncmp_#t~mem6#1| 0)} is VALID [2022-02-20 23:40:32,237 INFO L290 TraceCheckUtils]: 90: Hoare triple {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} assume !cstrncmp_#t~short7#1; {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:32,237 INFO L290 TraceCheckUtils]: 89: Hoare triple {15582#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15248#(= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)} is VALID [2022-02-20 23:40:32,237 INFO L290 TraceCheckUtils]: 88: Hoare triple {15586#(or (not (= |ULTIMATE.start_cstrncmp_#t~mem4#1| |ULTIMATE.start_cstrncmp_#t~mem3#1|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15582#(or (not |ULTIMATE.start_cstrncmp_#t~short5#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:32,238 INFO L290 TraceCheckUtils]: 87: Hoare triple {15590#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15586#(or (not (= |ULTIMATE.start_cstrncmp_#t~mem4#1| |ULTIMATE.start_cstrncmp_#t~mem3#1|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))} is VALID [2022-02-20 23:40:32,238 INFO L290 TraceCheckUtils]: 86: Hoare triple {15594#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15590#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= |ULTIMATE.start_cstrncmp_#t~mem3#1| (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|))))} is VALID [2022-02-20 23:40:32,239 INFO L290 TraceCheckUtils]: 85: Hoare triple {15594#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {15594#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,239 INFO L290 TraceCheckUtils]: 84: Hoare triple {15594#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15594#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,240 INFO L290 TraceCheckUtils]: 83: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15594#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) |ULTIMATE.start_cstrncmp_~s2#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,241 INFO L290 TraceCheckUtils]: 82: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,241 INFO L290 TraceCheckUtils]: 81: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,242 INFO L290 TraceCheckUtils]: 80: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1; {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,242 INFO L290 TraceCheckUtils]: 79: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,243 INFO L290 TraceCheckUtils]: 78: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,244 INFO L290 TraceCheckUtils]: 77: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,244 INFO L290 TraceCheckUtils]: 76: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,245 INFO L290 TraceCheckUtils]: 75: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,245 INFO L290 TraceCheckUtils]: 74: Hoare triple {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,246 INFO L290 TraceCheckUtils]: 73: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15604#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ |ULTIMATE.start_cstrncmp_~s2#1.offset| 1)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,246 INFO L290 TraceCheckUtils]: 72: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,247 INFO L290 TraceCheckUtils]: 71: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,247 INFO L290 TraceCheckUtils]: 70: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1; {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,248 INFO L290 TraceCheckUtils]: 69: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,248 INFO L290 TraceCheckUtils]: 68: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,248 INFO L290 TraceCheckUtils]: 67: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,249 INFO L290 TraceCheckUtils]: 66: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,249 INFO L290 TraceCheckUtils]: 65: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume cstrncmp_#t~short5#1; {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,250 INFO L290 TraceCheckUtils]: 64: Hoare triple {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,250 INFO L290 TraceCheckUtils]: 63: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15635#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 2 |ULTIMATE.start_cstrncmp_~s2#1.offset|)))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,251 INFO L290 TraceCheckUtils]: 62: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,251 INFO L290 TraceCheckUtils]: 61: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,252 INFO L290 TraceCheckUtils]: 60: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume !cstrncmp_#t~short7#1; {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,252 INFO L290 TraceCheckUtils]: 59: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,253 INFO L290 TraceCheckUtils]: 58: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,254 INFO L290 TraceCheckUtils]: 57: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,254 INFO L290 TraceCheckUtils]: 56: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,255 INFO L290 TraceCheckUtils]: 55: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume cstrncmp_#t~short5#1; {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,255 INFO L290 TraceCheckUtils]: 54: Hoare triple {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,256 INFO L290 TraceCheckUtils]: 53: Hoare triple {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1;havoc cstrncmp_#t~mem6#1;havoc cstrncmp_#t~short7#1;cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset := cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#t~post8#1.base, 1 + cstrncmp_#t~post8#1.offset;havoc cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset;cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset := cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#t~post9#1.base, 1 + cstrncmp_#t~post9#1.offset;havoc cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset; {15666#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 3 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,256 INFO L290 TraceCheckUtils]: 52: Hoare triple {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short7#1 := 0 == cstrncmp_#t~mem6#1; {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,257 INFO L290 TraceCheckUtils]: 51: Hoare triple {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} SUMMARY for call cstrncmp_#t~mem6#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L520-2 {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,258 INFO L290 TraceCheckUtils]: 50: Hoare triple {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !cstrncmp_#t~short7#1; {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,258 INFO L290 TraceCheckUtils]: 49: Hoare triple {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} assume !!cstrncmp_#t~short5#1;havoc cstrncmp_#t~post2#1;havoc cstrncmp_#t~mem3#1;havoc cstrncmp_#t~mem4#1;havoc cstrncmp_#t~short5#1;cstrncmp_#t~short7#1 := 0 == cstrncmp_~n#1; {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,259 INFO L290 TraceCheckUtils]: 48: Hoare triple {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} cstrncmp_#t~short5#1 := cstrncmp_#t~mem3#1 == cstrncmp_#t~mem4#1; {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,260 INFO L290 TraceCheckUtils]: 47: Hoare triple {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} SUMMARY for call cstrncmp_#t~mem4#1 := read~int(cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, 1); srcloc: L519-3 {15697#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0)))} is VALID [2022-02-20 23:40:32,261 INFO L290 TraceCheckUtils]: 46: Hoare triple {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} SUMMARY for call cstrncmp_#t~mem3#1 := read~int(cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, 1); srcloc: L519-2 {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} is VALID [2022-02-20 23:40:32,261 INFO L290 TraceCheckUtils]: 45: Hoare triple {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} assume cstrncmp_#t~short5#1; {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} is VALID [2022-02-20 23:40:32,262 INFO L290 TraceCheckUtils]: 44: Hoare triple {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} cstrncmp_#t~post2#1 := cstrncmp_~n#1;cstrncmp_~n#1 := cstrncmp_#t~post2#1 - 1;cstrncmp_#t~short5#1 := cstrncmp_#t~post2#1 > 0; {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} is VALID [2022-02-20 23:40:32,262 INFO L290 TraceCheckUtils]: 43: Hoare triple {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} assume !(0 == cstrncmp_~n#1); {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} is VALID [2022-02-20 23:40:32,263 INFO L290 TraceCheckUtils]: 42: Hoare triple {15732#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|v_ULTIMATE.start_cstrncmp_~s2#1.offset_74| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| |v_ULTIMATE.start_cstrncmp_~s2#1.offset_74|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (<= 0 |v_ULTIMATE.start_cstrncmp_~s2#1.offset_74|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |v_ULTIMATE.start_cstrncmp_~s2#1.offset_74| 4)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} assume -2147483648 <= main_#t~nondet21#1 && main_#t~nondet21#1 <= 2147483647;assume { :begin_inline_cstrncmp } true;cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset, cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset, cstrncmp_#in~n#1 := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset, main_#t~nondet21#1;havoc cstrncmp_#res#1;havoc cstrncmp_#t~mem6#1, cstrncmp_#t~short7#1, cstrncmp_#t~post8#1.base, cstrncmp_#t~post8#1.offset, cstrncmp_#t~post9#1.base, cstrncmp_#t~post9#1.offset, cstrncmp_#t~post2#1, cstrncmp_#t~mem3#1, cstrncmp_#t~mem4#1, cstrncmp_#t~short5#1, cstrncmp_#t~mem10#1, cstrncmp_#t~mem11#1, cstrncmp_#t~ite12#1, cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset, cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset, cstrncmp_~n#1, cstrncmp_~uc1~0#1, cstrncmp_~uc2~0#1;cstrncmp_~s1#1.base, cstrncmp_~s1#1.offset := cstrncmp_#in~s1#1.base, cstrncmp_#in~s1#1.offset;cstrncmp_~s2#1.base, cstrncmp_~s2#1.offset := cstrncmp_#in~s2#1.base, cstrncmp_#in~s2#1.offset;cstrncmp_~n#1 := cstrncmp_#in~n#1;havoc cstrncmp_~uc1~0#1;havoc cstrncmp_~uc2~0#1; {15716#(or (not (<= 0 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (not (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s2#1.base|) (+ 4 |ULTIMATE.start_cstrncmp_~s2#1.offset|)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0))))} is VALID [2022-02-20 23:40:32,264 INFO L290 TraceCheckUtils]: 41: Hoare triple {15736#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L551 {15732#(forall ((|ULTIMATE.start_cstrncmp_~s1#1.base| Int) (|v_ULTIMATE.start_cstrncmp_~s2#1.offset_74| Int) (|ULTIMATE.start_cstrncmp_~s1#1.offset| Int)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| |v_ULTIMATE.start_cstrncmp_~s2#1.offset_74|) (= (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|) 0) (not (<= 0 |v_ULTIMATE.start_cstrncmp_~s2#1.offset_74|)) (not (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |v_ULTIMATE.start_cstrncmp_~s2#1.offset_74| 4)) (select (select |#memory_int| |ULTIMATE.start_cstrncmp_~s1#1.base|) |ULTIMATE.start_cstrncmp_~s1#1.offset|)))))} is VALID [2022-02-20 23:40:32,264 INFO L290 TraceCheckUtils]: 40: Hoare triple {15736#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L546-4 {15736#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5)))} is VALID [2022-02-20 23:40:32,265 INFO L290 TraceCheckUtils]: 39: Hoare triple {15743#(or (and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5))) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {15736#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5)))} is VALID [2022-02-20 23:40:32,265 INFO L290 TraceCheckUtils]: 38: Hoare triple {15747#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5))))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15743#(or (and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5))) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:32,266 INFO L290 TraceCheckUtils]: 37: Hoare triple {15747#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5))))} havoc main_#t~nondet20#1; {15747#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5))))} is VALID [2022-02-20 23:40:32,266 INFO L290 TraceCheckUtils]: 36: Hoare triple {15747#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5))))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15747#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5))))} is VALID [2022-02-20 23:40:32,267 INFO L290 TraceCheckUtils]: 35: Hoare triple {15757#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15747#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 5 |ULTIMATE.start_main_~length2~0#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 5))))} is VALID [2022-02-20 23:40:32,267 INFO L290 TraceCheckUtils]: 34: Hoare triple {15761#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 2)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15757#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 3)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 |ULTIMATE.start_main_~i~1#1|)))} is VALID [2022-02-20 23:40:32,268 INFO L290 TraceCheckUtils]: 33: Hoare triple {15761#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 2)))} havoc main_#t~nondet20#1; {15761#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 2)))} is VALID [2022-02-20 23:40:32,268 INFO L290 TraceCheckUtils]: 32: Hoare triple {15761#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 2)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15761#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 2)))} is VALID [2022-02-20 23:40:32,269 INFO L290 TraceCheckUtils]: 31: Hoare triple {15761#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 2)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15761#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 2)))} is VALID [2022-02-20 23:40:32,269 INFO L290 TraceCheckUtils]: 30: Hoare triple {15774#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 1)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15761#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 2)))} is VALID [2022-02-20 23:40:32,269 INFO L290 TraceCheckUtils]: 29: Hoare triple {15774#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 1)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|)))} havoc main_#t~nondet20#1; {15774#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 1)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|)))} is VALID [2022-02-20 23:40:32,270 INFO L290 TraceCheckUtils]: 28: Hoare triple {15774#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 1)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15774#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 1)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|)))} is VALID [2022-02-20 23:40:32,270 INFO L290 TraceCheckUtils]: 27: Hoare triple {15774#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 1)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15774#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 1)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|)))} is VALID [2022-02-20 23:40:32,271 INFO L290 TraceCheckUtils]: 26: Hoare triple {15787#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 0)))} main_#t~post19#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post19#1;havoc main_#t~post19#1; {15774#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 1)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~i~1#1|)))} is VALID [2022-02-20 23:40:32,271 INFO L290 TraceCheckUtils]: 25: Hoare triple {15787#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 0)))} havoc main_#t~nondet20#1; {15787#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 0)))} is VALID [2022-02-20 23:40:32,271 INFO L290 TraceCheckUtils]: 24: Hoare triple {15787#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 0)))} SUMMARY for call write~int(main_#t~nondet20#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L548 {15787#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 0)))} is VALID [2022-02-20 23:40:32,272 INFO L290 TraceCheckUtils]: 23: Hoare triple {15787#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 0)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet20#1 && main_#t~nondet20#1 <= 127; {15787#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 0)))} is VALID [2022-02-20 23:40:32,272 INFO L290 TraceCheckUtils]: 22: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_~i~1#1 := 0; {15787#(and (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 0 |ULTIMATE.start_main_~i~1#1|)) (or (< |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~i~1#1|) 0)))} is VALID [2022-02-20 23:40:32,272 INFO L290 TraceCheckUtils]: 21: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,272 INFO L290 TraceCheckUtils]: 20: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,273 INFO L290 TraceCheckUtils]: 19: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet18#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,273 INFO L290 TraceCheckUtils]: 18: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,273 INFO L290 TraceCheckUtils]: 17: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,273 INFO L290 TraceCheckUtils]: 16: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,273 INFO L290 TraceCheckUtils]: 15: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet18#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,274 INFO L290 TraceCheckUtils]: 14: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,274 INFO L290 TraceCheckUtils]: 13: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,274 INFO L290 TraceCheckUtils]: 12: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,274 INFO L290 TraceCheckUtils]: 11: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet18#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,275 INFO L290 TraceCheckUtils]: 10: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,275 INFO L290 TraceCheckUtils]: 9: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,275 INFO L290 TraceCheckUtils]: 8: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post17#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post17#1;havoc main_#t~post17#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,275 INFO L290 TraceCheckUtils]: 7: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet18#1; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,283 INFO L290 TraceCheckUtils]: 6: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet18#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,284 INFO L290 TraceCheckUtils]: 5: Hoare triple {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet18#1 && main_#t~nondet18#1 <= 127; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,284 INFO L290 TraceCheckUtils]: 4: Hoare triple {15234#true} call main_#t~malloc15#1.base, main_#t~malloc15#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc15#1.base, main_#t~malloc15#1.offset;call main_#t~malloc16#1.base, main_#t~malloc16#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc16#1.base, main_#t~malloc16#1.offset;main_~i~0#1 := 0; {15266#(<= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:40:32,284 INFO L290 TraceCheckUtils]: 3: Hoare triple {15234#true} assume !(main_~length2~0#1 < 1); {15234#true} is VALID [2022-02-20 23:40:32,285 INFO L290 TraceCheckUtils]: 2: Hoare triple {15234#true} assume !(main_~length1~0#1 < 1); {15234#true} is VALID [2022-02-20 23:40:32,285 INFO L290 TraceCheckUtils]: 1: Hoare triple {15234#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet13#1, main_#t~nondet14#1, main_#t~malloc15#1.base, main_#t~malloc15#1.offset, main_#t~malloc16#1.base, main_#t~malloc16#1.offset, main_#t~nondet18#1, main_#t~post17#1, main_~i~0#1, main_#t~nondet20#1, main_#t~post19#1, main_~i~1#1, main_#t~nondet21#1, main_#t~ret22#1, main_~length1~0#1, main_~length2~0#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;assume -2147483648 <= main_#t~nondet13#1 && main_#t~nondet13#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet13#1;havoc main_#t~nondet13#1;assume -2147483648 <= main_#t~nondet14#1 && main_#t~nondet14#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet14#1;havoc main_#t~nondet14#1; {15234#true} is VALID [2022-02-20 23:40:32,285 INFO L290 TraceCheckUtils]: 0: Hoare triple {15234#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {15234#true} is VALID [2022-02-20 23:40:32,285 INFO L134 CoverageAnalysis]: Checked inductivity of 171 backedges. 15 proven. 128 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 23:40:32,285 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [342590814] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:32,286 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:40:32,286 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 23, 23] total 53 [2022-02-20 23:40:32,286 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1637378703] [2022-02-20 23:40:32,286 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:32,287 INFO L78 Accepts]: Start accepts. Automaton has has 53 states, 53 states have (on average 4.320754716981132) internal successors, (229), 53 states have internal predecessors, (229), 0 states have call successors, (0), 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 97 [2022-02-20 23:40:32,287 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:32,287 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 53 states, 53 states have (on average 4.320754716981132) internal successors, (229), 53 states have internal predecessors, (229), 0 states have call successors, (0), 0 states have call 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:32,509 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 229 edges. 229 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:32,510 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 53 states [2022-02-20 23:40:32,510 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:32,510 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 53 interpolants. [2022-02-20 23:40:32,511 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=155, Invalid=2601, Unknown=0, NotChecked=0, Total=2756 [2022-02-20 23:40:32,511 INFO L87 Difference]: Start difference. First operand 106 states and 108 transitions. Second operand has 53 states, 53 states have (on average 4.320754716981132) internal successors, (229), 53 states have internal predecessors, (229), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0)