./Ultimate.py --spec ../sv-benchmarks/c/properties/valid-memsafety.prp --file ../sv-benchmarks/c/array-memsafety/cstrcspn-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/cstrcspn-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 15fe42cb945ebd9019cc38134c29264613097f232589ff55d01d33d66b19d85f --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 23:39:11,577 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 23:39:11,578 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 23:39:11,605 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 23:39:11,605 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 23:39:11,608 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 23:39:11,609 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 23:39:11,612 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 23:39:11,614 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 23:39:11,616 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 23:39:11,617 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 23:39:11,618 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 23:39:11,618 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 23:39:11,620 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 23:39:11,621 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 23:39:11,624 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 23:39:11,624 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 23:39:11,625 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 23:39:11,626 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 23:39:11,630 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 23:39:11,631 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 23:39:11,632 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 23:39:11,633 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 23:39:11,633 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 23:39:11,638 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 23:39:11,638 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 23:39:11,638 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 23:39:11,639 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 23:39:11,639 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 23:39:11,640 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 23:39:11,640 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 23:39:11,641 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 23:39:11,642 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 23:39:11,644 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 23:39:11,644 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 23:39:11,645 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 23:39:11,645 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 23:39:11,645 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 23:39:11,645 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 23:39:11,646 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 23:39:11,646 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 23:39:11,647 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:11,676 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 23:39:11,677 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 23:39:11,677 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 23:39:11,677 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 23:39:11,678 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 23:39:11,678 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 23:39:11,678 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 23:39:11,679 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 23:39:11,679 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 23:39:11,679 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 23:39:11,680 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 23:39:11,680 INFO L138 SettingsManager]: * Check unreachability of error function in SV-COMP mode=false [2022-02-20 23:39:11,680 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 23:39:11,680 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 23:39:11,680 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 23:39:11,680 INFO L138 SettingsManager]: * Check for the main procedure if all allocated memory was freed=true [2022-02-20 23:39:11,681 INFO L138 SettingsManager]: * Bitprecise bitfields=true [2022-02-20 23:39:11,681 INFO L138 SettingsManager]: * SV-COMP memtrack compatibility mode=true [2022-02-20 23:39:11,681 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 23:39:11,681 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 23:39:11,681 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 23:39:11,681 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 23:39:11,681 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 23:39:11,682 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 23:39:11,682 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 23:39:11,682 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:39:11,682 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 23:39:11,682 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 23:39:11,682 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 23:39:11,683 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 23:39:11,684 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 -> 15fe42cb945ebd9019cc38134c29264613097f232589ff55d01d33d66b19d85f [2022-02-20 23:39:11,876 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 23:39:11,892 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 23:39:11,894 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 23:39:11,895 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 23:39:11,896 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 23:39:11,897 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-memsafety/cstrcspn-alloca-1.i [2022-02-20 23:39:11,947 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a3e28c164/c3d9b8f7c64148f0bc856c83a002b085/FLAG18afc50ea [2022-02-20 23:39:12,321 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 23:39:12,322 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-memsafety/cstrcspn-alloca-1.i [2022-02-20 23:39:12,330 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a3e28c164/c3d9b8f7c64148f0bc856c83a002b085/FLAG18afc50ea [2022-02-20 23:39:12,339 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/a3e28c164/c3d9b8f7c64148f0bc856c83a002b085 [2022-02-20 23:39:12,341 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 23:39:12,341 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 23:39:12,343 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 23:39:12,343 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 23:39:12,346 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 23:39:12,346 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:39:12" (1/1) ... [2022-02-20 23:39:12,347 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1767320 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:12, skipping insertion in model container [2022-02-20 23:39:12,347 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 11:39:12" (1/1) ... [2022-02-20 23:39:12,354 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 23:39:12,380 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 23:39:12,621 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:39:12,640 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 23:39:12,692 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 23:39:12,707 INFO L208 MainTranslator]: Completed translation [2022-02-20 23:39:12,708 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:12 WrapperNode [2022-02-20 23:39:12,712 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 23:39:12,712 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 23:39:12,713 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 23:39:12,713 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 23:39:12,719 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:12" (1/1) ... [2022-02-20 23:39:12,726 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:12" (1/1) ... [2022-02-20 23:39:12,743 INFO L137 Inliner]: procedures = 117, calls = 18, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 102 [2022-02-20 23:39:12,743 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 23:39:12,744 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 23:39:12,744 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 23:39:12,744 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 23:39:12,750 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:12" (1/1) ... [2022-02-20 23:39:12,750 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:12" (1/1) ... [2022-02-20 23:39:12,752 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:12" (1/1) ... [2022-02-20 23:39:12,752 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:12" (1/1) ... [2022-02-20 23:39:12,758 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:12" (1/1) ... [2022-02-20 23:39:12,763 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:12" (1/1) ... [2022-02-20 23:39:12,767 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:12" (1/1) ... [2022-02-20 23:39:12,769 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 23:39:12,772 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 23:39:12,772 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 23:39:12,772 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 23:39:12,773 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:12" (1/1) ... [2022-02-20 23:39:12,778 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 23:39:12,787 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:12,798 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:12,809 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:12,842 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 23:39:12,842 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 23:39:12,842 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 23:39:12,842 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 23:39:12,842 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 23:39:12,842 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 23:39:12,907 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 23:39:12,908 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 23:39:13,207 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 23:39:13,213 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 23:39:13,214 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 23:39:13,215 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:39:13 BoogieIcfgContainer [2022-02-20 23:39:13,215 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 23:39:13,217 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 23:39:13,217 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 23:39:13,219 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 23:39:13,220 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 11:39:12" (1/3) ... [2022-02-20 23:39:13,220 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@563254f0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:39:13, skipping insertion in model container [2022-02-20 23:39:13,221 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 11:39:12" (2/3) ... [2022-02-20 23:39:13,221 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@563254f0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 11:39:13, skipping insertion in model container [2022-02-20 23:39:13,221 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 11:39:13" (3/3) ... [2022-02-20 23:39:13,222 INFO L111 eAbstractionObserver]: Analyzing ICFG cstrcspn-alloca-1.i [2022-02-20 23:39:13,228 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 23:39:13,228 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 19 error locations. [2022-02-20 23:39:13,259 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 23:39:13,265 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:13,265 INFO L340 AbstractCegarLoop]: Starting to check reachability of 19 error locations. [2022-02-20 23:39:13,283 INFO L276 IsEmpty]: Start isEmpty. Operand has 54 states, 34 states have (on average 1.911764705882353) internal successors, (65), 53 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:13,287 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:39:13,287 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:13,287 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:13,288 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:13,291 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:13,291 INFO L85 PathProgramCache]: Analyzing trace with hash 1805029096, now seen corresponding path program 1 times [2022-02-20 23:39:13,297 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:13,297 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1008101020] [2022-02-20 23:39:13,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:13,298 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:13,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:13,454 INFO L290 TraceCheckUtils]: 0: Hoare triple {57#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {57#true} is VALID [2022-02-20 23:39:13,454 INFO L290 TraceCheckUtils]: 1: Hoare triple {57#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {57#true} is VALID [2022-02-20 23:39:13,455 INFO L290 TraceCheckUtils]: 2: Hoare triple {57#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {59#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:39:13,456 INFO L290 TraceCheckUtils]: 3: Hoare triple {59#(<= |ULTIMATE.start_main_~length1~0#1| 1)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {59#(<= |ULTIMATE.start_main_~length1~0#1| 1)} is VALID [2022-02-20 23:39:13,457 INFO L290 TraceCheckUtils]: 4: Hoare triple {59#(<= |ULTIMATE.start_main_~length1~0#1| 1)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {60#(and (= |ULTIMATE.start_main_~i~0#1| 0) (<= |ULTIMATE.start_main_~length1~0#1| 1))} is VALID [2022-02-20 23:39:13,458 INFO L290 TraceCheckUtils]: 5: Hoare triple {60#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {58#false} is VALID [2022-02-20 23:39:13,458 INFO L290 TraceCheckUtils]: 6: Hoare triple {58#false} assume !(1 == #valid[main_~nondetString1~0#1.base]); {58#false} is VALID [2022-02-20 23:39:13,459 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:13,459 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:13,460 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1008101020] [2022-02-20 23:39:13,460 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1008101020] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:13,461 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:13,461 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:13,462 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1822133592] [2022-02-20 23:39:13,462 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:13,466 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:13,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:13,469 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:13,477 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:13,478 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:13,479 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:13,496 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:13,497 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:13,499 INFO L87 Difference]: Start difference. First operand has 54 states, 34 states have (on average 1.911764705882353) internal successors, (65), 53 states have internal predecessors, (65), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 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:13,657 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:13,658 INFO L93 Difference]: Finished difference Result 100 states and 112 transitions. [2022-02-20 23:39:13,658 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:13,659 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:13,659 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:13,660 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:13,667 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 121 transitions. [2022-02-20 23:39:13,667 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:13,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 121 transitions. [2022-02-20 23:39:13,670 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 121 transitions. [2022-02-20 23:39:13,767 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:13,781 INFO L225 Difference]: With dead ends: 100 [2022-02-20 23:39:13,781 INFO L226 Difference]: Without dead ends: 96 [2022-02-20 23:39:13,783 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:13,786 INFO L933 BasicCegarLoop]: 57 mSDtfsCounter, 50 mSDsluCounter, 103 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 160 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:13,787 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 160 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:13,798 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-02-20 23:39:13,812 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 55. [2022-02-20 23:39:13,812 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:13,813 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 55 states, 36 states have (on average 1.75) internal successors, (63), 54 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:13,815 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 55 states, 36 states have (on average 1.75) internal successors, (63), 54 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:13,816 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 55 states, 36 states have (on average 1.75) internal successors, (63), 54 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:13,823 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:13,823 INFO L93 Difference]: Finished difference Result 96 states and 108 transitions. [2022-02-20 23:39:13,824 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 108 transitions. [2022-02-20 23:39:13,824 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:13,824 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:13,825 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 36 states have (on average 1.75) internal successors, (63), 54 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 96 states. [2022-02-20 23:39:13,828 INFO L87 Difference]: Start difference. First operand has 55 states, 36 states have (on average 1.75) internal successors, (63), 54 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 96 states. [2022-02-20 23:39:13,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:13,831 INFO L93 Difference]: Finished difference Result 96 states and 108 transitions. [2022-02-20 23:39:13,831 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 108 transitions. [2022-02-20 23:39:13,831 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:13,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:13,832 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:13,832 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:13,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 36 states have (on average 1.75) internal successors, (63), 54 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:13,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 63 transitions. [2022-02-20 23:39:13,834 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 63 transitions. Word has length 7 [2022-02-20 23:39:13,834 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:13,834 INFO L470 AbstractCegarLoop]: Abstraction has 55 states and 63 transitions. [2022-02-20 23:39:13,835 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:13,835 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 63 transitions. [2022-02-20 23:39:13,835 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:39:13,835 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:13,836 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:13,836 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 23:39:13,836 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:13,837 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:13,838 INFO L85 PathProgramCache]: Analyzing trace with hash 1806876138, now seen corresponding path program 1 times [2022-02-20 23:39:13,838 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:13,839 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1151070917] [2022-02-20 23:39:13,839 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:13,839 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:13,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:13,918 INFO L290 TraceCheckUtils]: 0: Hoare triple {410#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {410#true} is VALID [2022-02-20 23:39:13,918 INFO L290 TraceCheckUtils]: 1: Hoare triple {410#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {410#true} is VALID [2022-02-20 23:39:13,919 INFO L290 TraceCheckUtils]: 2: Hoare triple {410#true} assume !(main_~length1~0#1 < 1); {410#true} is VALID [2022-02-20 23:39:13,919 INFO L290 TraceCheckUtils]: 3: Hoare triple {410#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {410#true} is VALID [2022-02-20 23:39:13,922 INFO L290 TraceCheckUtils]: 4: Hoare triple {410#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {412#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:39:13,923 INFO L290 TraceCheckUtils]: 5: Hoare triple {412#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {412#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:39:13,923 INFO L290 TraceCheckUtils]: 6: Hoare triple {412#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume !(1 == #valid[main_~nondetString1~0#1.base]); {411#false} is VALID [2022-02-20 23:39:13,923 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:13,924 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:13,924 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1151070917] [2022-02-20 23:39:13,925 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1151070917] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:13,925 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:13,925 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:39:13,927 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1546812440] [2022-02-20 23:39:13,927 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:13,928 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:39:13,929 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:13,930 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:13,935 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:13,936 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:39:13,936 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:13,936 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:39:13,937 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:39:13,937 INFO L87 Difference]: Start difference. First operand 55 states and 63 transitions. Second operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:14,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,016 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-02-20 23:39:14,016 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:39:14,016 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 7 [2022-02-20 23:39:14,016 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:14,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:14,018 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 59 transitions. [2022-02-20 23:39:14,018 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:14,019 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 59 transitions. [2022-02-20 23:39:14,019 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 59 transitions. [2022-02-20 23:39:14,059 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:14,061 INFO L225 Difference]: With dead ends: 53 [2022-02-20 23:39:14,062 INFO L226 Difference]: Without dead ends: 53 [2022-02-20 23:39:14,062 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:14,066 INFO L933 BasicCegarLoop]: 37 mSDtfsCounter, 47 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:14,067 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [47 Valid, 41 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:14,068 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-02-20 23:39:14,073 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 53. [2022-02-20 23:39:14,074 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:14,074 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 53 states, 36 states have (on average 1.6944444444444444) 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:14,074 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 53 states, 36 states have (on average 1.6944444444444444) 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:14,075 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 53 states, 36 states have (on average 1.6944444444444444) 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:14,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,077 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-02-20 23:39:14,077 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:14,081 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:14,081 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:14,082 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 36 states have (on average 1.6944444444444444) 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:14,082 INFO L87 Difference]: Start difference. First operand has 53 states, 36 states have (on average 1.6944444444444444) 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:14,083 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,084 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-02-20 23:39:14,084 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:14,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:14,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:14,084 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:14,084 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:14,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 36 states have (on average 1.6944444444444444) 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:14,087 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 61 transitions. [2022-02-20 23:39:14,088 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 61 transitions. Word has length 7 [2022-02-20 23:39:14,088 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:14,088 INFO L470 AbstractCegarLoop]: Abstraction has 53 states and 61 transitions. [2022-02-20 23:39:14,088 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 2 states have (on average 3.5) internal successors, (7), 3 states have internal predecessors, (7), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:14,088 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:14,089 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 8 [2022-02-20 23:39:14,089 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:14,089 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:14,089 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-02-20 23:39:14,089 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:14,090 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:14,090 INFO L85 PathProgramCache]: Analyzing trace with hash 1806876139, now seen corresponding path program 1 times [2022-02-20 23:39:14,090 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:14,091 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1959248419] [2022-02-20 23:39:14,091 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:14,092 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:14,119 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:14,173 INFO L290 TraceCheckUtils]: 0: Hoare triple {627#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {627#true} is VALID [2022-02-20 23:39:14,174 INFO L290 TraceCheckUtils]: 1: Hoare triple {627#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {627#true} is VALID [2022-02-20 23:39:14,174 INFO L290 TraceCheckUtils]: 2: Hoare triple {627#true} assume !(main_~length1~0#1 < 1); {627#true} is VALID [2022-02-20 23:39:14,175 INFO L290 TraceCheckUtils]: 3: Hoare triple {627#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {629#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:14,175 INFO L290 TraceCheckUtils]: 4: Hoare triple {629#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {630#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:14,176 INFO L290 TraceCheckUtils]: 5: Hoare triple {630#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~length1~0#1| (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {631#(and (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:14,177 INFO L290 TraceCheckUtils]: 6: Hoare triple {631#(and (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(1 + (main_~nondetString1~0#1.offset + main_~i~0#1) <= #length[main_~nondetString1~0#1.base] && 0 <= main_~nondetString1~0#1.offset + main_~i~0#1); {628#false} is VALID [2022-02-20 23:39:14,177 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:14,177 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:14,177 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1959248419] [2022-02-20 23:39:14,177 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1959248419] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:14,178 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:14,178 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:14,178 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1409473778] [2022-02-20 23:39:14,178 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:14,178 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 5 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:14,178 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:14,179 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 4 states have (on average 1.75) internal successors, (7), 5 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:14,184 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:14,184 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:39:14,184 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:14,185 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:39:14,185 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:39:14,185 INFO L87 Difference]: Start difference. First operand 53 states and 61 transitions. Second operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 5 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:14,391 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,391 INFO L93 Difference]: Finished difference Result 97 states and 110 transitions. [2022-02-20 23:39:14,391 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:39:14,391 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 5 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:14,392 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:14,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 5 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:14,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 107 transitions. [2022-02-20 23:39:14,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 4 states have (on average 1.75) internal successors, (7), 5 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:14,394 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 107 transitions. [2022-02-20 23:39:14,394 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 107 transitions. [2022-02-20 23:39:14,488 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:39:14,491 INFO L225 Difference]: With dead ends: 97 [2022-02-20 23:39:14,491 INFO L226 Difference]: Without dead ends: 97 [2022-02-20 23:39:14,491 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:39:14,497 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 183 mSDsluCounter, 36 mSDsCounter, 0 mSdLazyCounter, 59 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 183 SdHoareTripleChecker+Valid, 69 SdHoareTripleChecker+Invalid, 62 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 59 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:14,498 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [183 Valid, 69 Invalid, 62 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 59 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:14,499 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2022-02-20 23:39:14,504 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 55. [2022-02-20 23:39:14,504 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:14,505 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand has 55 states, 38 states have (on average 1.6842105263157894) internal successors, (64), 54 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:14,505 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand has 55 states, 38 states have (on average 1.6842105263157894) internal successors, (64), 54 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:14,505 INFO L87 Difference]: Start difference. First operand 97 states. Second operand has 55 states, 38 states have (on average 1.6842105263157894) internal successors, (64), 54 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:14,507 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,507 INFO L93 Difference]: Finished difference Result 97 states and 110 transitions. [2022-02-20 23:39:14,508 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 110 transitions. [2022-02-20 23:39:14,508 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:14,508 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:14,508 INFO L74 IsIncluded]: Start isIncluded. First operand has 55 states, 38 states have (on average 1.6842105263157894) internal successors, (64), 54 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 97 states. [2022-02-20 23:39:14,508 INFO L87 Difference]: Start difference. First operand has 55 states, 38 states have (on average 1.6842105263157894) internal successors, (64), 54 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 97 states. [2022-02-20 23:39:14,510 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,510 INFO L93 Difference]: Finished difference Result 97 states and 110 transitions. [2022-02-20 23:39:14,510 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 110 transitions. [2022-02-20 23:39:14,511 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:14,511 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:14,511 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:14,511 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:14,511 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 55 states, 38 states have (on average 1.6842105263157894) internal successors, (64), 54 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:14,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 55 states to 55 states and 64 transitions. [2022-02-20 23:39:14,512 INFO L78 Accepts]: Start accepts. Automaton has 55 states and 64 transitions. Word has length 7 [2022-02-20 23:39:14,512 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:14,513 INFO L470 AbstractCegarLoop]: Abstraction has 55 states and 64 transitions. [2022-02-20 23:39:14,513 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 4 states have (on average 1.75) internal successors, (7), 5 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:14,513 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 64 transitions. [2022-02-20 23:39:14,513 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:39:14,513 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:14,513 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:14,513 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-02-20 23:39:14,514 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:14,514 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:14,514 INFO L85 PathProgramCache]: Analyzing trace with hash -533876960, now seen corresponding path program 1 times [2022-02-20 23:39:14,514 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:14,515 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [632147437] [2022-02-20 23:39:14,515 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:14,515 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:14,529 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:14,562 INFO L290 TraceCheckUtils]: 0: Hoare triple {984#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {984#true} is VALID [2022-02-20 23:39:14,562 INFO L290 TraceCheckUtils]: 1: Hoare triple {984#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {984#true} is VALID [2022-02-20 23:39:14,563 INFO L290 TraceCheckUtils]: 2: Hoare triple {984#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {986#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:14,563 INFO L290 TraceCheckUtils]: 3: Hoare triple {986#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {986#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:14,564 INFO L290 TraceCheckUtils]: 4: Hoare triple {986#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {987#(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:14,565 INFO L290 TraceCheckUtils]: 5: Hoare triple {987#(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); {987#(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:14,565 INFO L290 TraceCheckUtils]: 6: Hoare triple {987#(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; {987#(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:14,565 INFO L290 TraceCheckUtils]: 7: Hoare triple {987#(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); {987#(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:14,566 INFO L290 TraceCheckUtils]: 8: Hoare triple {987#(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)); {985#false} is VALID [2022-02-20 23:39:14,566 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:14,566 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:14,567 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [632147437] [2022-02-20 23:39:14,567 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [632147437] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:14,567 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:14,567 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:14,567 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2133430500] [2022-02-20 23:39:14,567 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:14,568 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:14,568 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:14,568 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:14,574 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:14,574 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:14,574 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:14,575 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:14,575 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:14,575 INFO L87 Difference]: Start difference. First operand 55 states and 64 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:14,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,649 INFO L93 Difference]: Finished difference Result 54 states and 63 transitions. [2022-02-20 23:39:14,649 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:14,649 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:14,650 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:14,650 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:14,650 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 57 transitions. [2022-02-20 23:39:14,650 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:14,651 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 57 transitions. [2022-02-20 23:39:14,651 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 57 transitions. [2022-02-20 23:39:14,690 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:14,691 INFO L225 Difference]: With dead ends: 54 [2022-02-20 23:39:14,691 INFO L226 Difference]: Without dead ends: 54 [2022-02-20 23:39:14,691 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:14,692 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 97 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 97 SdHoareTripleChecker+Valid, 38 SdHoareTripleChecker+Invalid, 25 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:14,692 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [97 Valid, 38 Invalid, 25 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:14,693 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-02-20 23:39:14,694 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2022-02-20 23:39:14,694 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:14,694 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 54 states, 38 states have (on average 1.6578947368421053) internal successors, (63), 53 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:14,695 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 54 states, 38 states have (on average 1.6578947368421053) internal successors, (63), 53 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:14,695 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 54 states, 38 states have (on average 1.6578947368421053) internal successors, (63), 53 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:14,696 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,696 INFO L93 Difference]: Finished difference Result 54 states and 63 transitions. [2022-02-20 23:39:14,696 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 63 transitions. [2022-02-20 23:39:14,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:14,696 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:14,696 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 38 states have (on average 1.6578947368421053) internal successors, (63), 53 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 54 states. [2022-02-20 23:39:14,697 INFO L87 Difference]: Start difference. First operand has 54 states, 38 states have (on average 1.6578947368421053) internal successors, (63), 53 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 54 states. [2022-02-20 23:39:14,698 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,698 INFO L93 Difference]: Finished difference Result 54 states and 63 transitions. [2022-02-20 23:39:14,698 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 63 transitions. [2022-02-20 23:39:14,698 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:14,698 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:14,698 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:14,698 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:14,698 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 38 states have (on average 1.6578947368421053) internal successors, (63), 53 states have internal predecessors, (63), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:14,699 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 63 transitions. [2022-02-20 23:39:14,699 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 63 transitions. Word has length 9 [2022-02-20 23:39:14,700 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:14,700 INFO L470 AbstractCegarLoop]: Abstraction has 54 states and 63 transitions. [2022-02-20 23:39:14,700 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:14,700 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 63 transitions. [2022-02-20 23:39:14,700 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:39:14,700 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:14,700 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:14,701 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-02-20 23:39:14,701 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:14,701 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:14,701 INFO L85 PathProgramCache]: Analyzing trace with hash -533876908, now seen corresponding path program 1 times [2022-02-20 23:39:14,701 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:14,701 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2127027152] [2022-02-20 23:39:14,702 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:14,702 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:14,717 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:14,736 INFO L290 TraceCheckUtils]: 0: Hoare triple {1206#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1206#true} is VALID [2022-02-20 23:39:14,736 INFO L290 TraceCheckUtils]: 1: Hoare triple {1206#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {1206#true} is VALID [2022-02-20 23:39:14,736 INFO L290 TraceCheckUtils]: 2: Hoare triple {1206#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1206#true} is VALID [2022-02-20 23:39:14,737 INFO L290 TraceCheckUtils]: 3: Hoare triple {1206#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {1208#(<= |ULTIMATE.start_main_~length2~0#1| 1)} is VALID [2022-02-20 23:39:14,737 INFO L290 TraceCheckUtils]: 4: Hoare triple {1208#(<= |ULTIMATE.start_main_~length2~0#1| 1)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {1208#(<= |ULTIMATE.start_main_~length2~0#1| 1)} is VALID [2022-02-20 23:39:14,737 INFO L290 TraceCheckUtils]: 5: Hoare triple {1208#(<= |ULTIMATE.start_main_~length2~0#1| 1)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1208#(<= |ULTIMATE.start_main_~length2~0#1| 1)} is VALID [2022-02-20 23:39:14,738 INFO L290 TraceCheckUtils]: 6: Hoare triple {1208#(<= |ULTIMATE.start_main_~length2~0#1| 1)} main_~i~1#1 := 0; {1209#(and (= |ULTIMATE.start_main_~i~1#1| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1))} is VALID [2022-02-20 23:39:14,738 INFO L290 TraceCheckUtils]: 7: Hoare triple {1209#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {1207#false} is VALID [2022-02-20 23:39:14,738 INFO L290 TraceCheckUtils]: 8: Hoare triple {1207#false} assume !(1 == #valid[main_~nondetString2~0#1.base]); {1207#false} is VALID [2022-02-20 23:39:14,738 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:14,739 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:14,739 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2127027152] [2022-02-20 23:39:14,739 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2127027152] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:14,743 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:14,743 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:14,743 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [87790604] [2022-02-20 23:39:14,743 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:14,744 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:14,744 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:14,744 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:14,752 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:14,752 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:14,752 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:14,753 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:14,753 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:14,753 INFO L87 Difference]: Start difference. First operand 54 states and 63 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:14,826 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,827 INFO L93 Difference]: Finished difference Result 98 states and 112 transitions. [2022-02-20 23:39:14,827 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:14,827 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:14,827 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:14,827 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:14,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 101 transitions. [2022-02-20 23:39:14,828 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:14,829 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 101 transitions. [2022-02-20 23:39:14,829 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 101 transitions. [2022-02-20 23:39:14,902 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:14,904 INFO L225 Difference]: With dead ends: 98 [2022-02-20 23:39:14,904 INFO L226 Difference]: Without dead ends: 98 [2022-02-20 23:39:14,904 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:14,905 INFO L933 BasicCegarLoop]: 52 mSDtfsCounter, 78 mSDsluCounter, 54 mSDsCounter, 0 mSdLazyCounter, 13 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 78 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 13 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 13 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:14,905 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [78 Valid, 106 Invalid, 13 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 13 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:14,906 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-02-20 23:39:14,915 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 65. [2022-02-20 23:39:14,915 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:14,916 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 65 states, 49 states have (on average 1.5714285714285714) internal successors, (77), 64 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:14,916 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 65 states, 49 states have (on average 1.5714285714285714) internal successors, (77), 64 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:14,916 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 65 states, 49 states have (on average 1.5714285714285714) internal successors, (77), 64 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:14,918 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,918 INFO L93 Difference]: Finished difference Result 98 states and 112 transitions. [2022-02-20 23:39:14,918 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 112 transitions. [2022-02-20 23:39:14,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:14,919 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:14,919 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 49 states have (on average 1.5714285714285714) internal successors, (77), 64 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 98 states. [2022-02-20 23:39:14,919 INFO L87 Difference]: Start difference. First operand has 65 states, 49 states have (on average 1.5714285714285714) internal successors, (77), 64 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 98 states. [2022-02-20 23:39:14,921 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:14,921 INFO L93 Difference]: Finished difference Result 98 states and 112 transitions. [2022-02-20 23:39:14,921 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 112 transitions. [2022-02-20 23:39:14,922 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:14,922 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:14,922 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:14,922 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:14,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 49 states have (on average 1.5714285714285714) internal successors, (77), 64 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:14,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 77 transitions. [2022-02-20 23:39:14,924 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 77 transitions. Word has length 9 [2022-02-20 23:39:14,924 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:14,924 INFO L470 AbstractCegarLoop]: Abstraction has 65 states and 77 transitions. [2022-02-20 23:39:14,924 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:14,924 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 77 transitions. [2022-02-20 23:39:14,924 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:39:14,925 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:14,925 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:14,925 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-02-20 23:39:14,925 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:14,926 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:14,926 INFO L85 PathProgramCache]: Analyzing trace with hash -476618606, now seen corresponding path program 1 times [2022-02-20 23:39:14,926 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:14,926 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2019268256] [2022-02-20 23:39:14,926 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:14,926 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:14,951 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:14,977 INFO L290 TraceCheckUtils]: 0: Hoare triple {1571#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1571#true} is VALID [2022-02-20 23:39:14,977 INFO L290 TraceCheckUtils]: 1: Hoare triple {1571#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {1571#true} is VALID [2022-02-20 23:39:14,977 INFO L290 TraceCheckUtils]: 2: Hoare triple {1571#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1571#true} is VALID [2022-02-20 23:39:14,978 INFO L290 TraceCheckUtils]: 3: Hoare triple {1571#true} assume !(main_~length2~0#1 < 1); {1571#true} is VALID [2022-02-20 23:39:14,979 INFO L290 TraceCheckUtils]: 4: Hoare triple {1571#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {1573#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:14,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {1573#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {1573#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:14,980 INFO L290 TraceCheckUtils]: 6: Hoare triple {1573#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} main_~i~1#1 := 0; {1573#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:14,980 INFO L290 TraceCheckUtils]: 7: Hoare triple {1573#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {1573#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:14,980 INFO L290 TraceCheckUtils]: 8: Hoare triple {1573#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} assume !(1 == #valid[main_~nondetString2~0#1.base]); {1572#false} is VALID [2022-02-20 23:39:14,980 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:14,980 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:14,981 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2019268256] [2022-02-20 23:39:14,981 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2019268256] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:14,981 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:14,981 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 23:39:14,981 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [28563709] [2022-02-20 23:39:14,981 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:14,981 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:14,982 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:14,982 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:14,987 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:14,987 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:39:14,987 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:14,988 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:39:14,988 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:39:14,989 INFO L87 Difference]: Start difference. First operand 65 states and 77 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:15,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,030 INFO L93 Difference]: Finished difference Result 63 states and 75 transitions. [2022-02-20 23:39:15,030 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:39:15,031 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:15,031 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:15,031 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:15,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 56 transitions. [2022-02-20 23:39:15,032 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:15,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 56 transitions. [2022-02-20 23:39:15,032 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 56 transitions. [2022-02-20 23:39:15,074 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:15,075 INFO L225 Difference]: With dead ends: 63 [2022-02-20 23:39:15,075 INFO L226 Difference]: Without dead ends: 63 [2022-02-20 23:39:15,075 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:15,076 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 42 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 40 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:15,076 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 40 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:15,076 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-02-20 23:39:15,078 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 63. [2022-02-20 23:39:15,078 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:15,078 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 63 states, 49 states have (on average 1.530612244897959) internal successors, (75), 62 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:15,078 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 63 states, 49 states have (on average 1.530612244897959) internal successors, (75), 62 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:15,079 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 63 states, 49 states have (on average 1.530612244897959) internal successors, (75), 62 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:15,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,080 INFO L93 Difference]: Finished difference Result 63 states and 75 transitions. [2022-02-20 23:39:15,080 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 75 transitions. [2022-02-20 23:39:15,080 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:15,080 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:15,080 INFO L74 IsIncluded]: Start isIncluded. First operand has 63 states, 49 states have (on average 1.530612244897959) internal successors, (75), 62 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 63 states. [2022-02-20 23:39:15,081 INFO L87 Difference]: Start difference. First operand has 63 states, 49 states have (on average 1.530612244897959) internal successors, (75), 62 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 63 states. [2022-02-20 23:39:15,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,082 INFO L93 Difference]: Finished difference Result 63 states and 75 transitions. [2022-02-20 23:39:15,082 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 75 transitions. [2022-02-20 23:39:15,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:15,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:15,082 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:15,083 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:15,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 63 states, 49 states have (on average 1.530612244897959) internal successors, (75), 62 states have internal predecessors, (75), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:15,084 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 63 states to 63 states and 75 transitions. [2022-02-20 23:39:15,084 INFO L78 Accepts]: Start accepts. Automaton has 63 states and 75 transitions. Word has length 9 [2022-02-20 23:39:15,084 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:15,084 INFO L470 AbstractCegarLoop]: Abstraction has 63 states and 75 transitions. [2022-02-20 23:39:15,084 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:15,084 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 75 transitions. [2022-02-20 23:39:15,085 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 10 [2022-02-20 23:39:15,085 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:15,085 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:15,085 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-02-20 23:39:15,085 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:15,086 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:15,086 INFO L85 PathProgramCache]: Analyzing trace with hash -476618605, now seen corresponding path program 1 times [2022-02-20 23:39:15,086 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:15,086 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [128326674] [2022-02-20 23:39:15,086 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:15,086 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:15,100 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:15,138 INFO L290 TraceCheckUtils]: 0: Hoare triple {1828#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {1828#true} is VALID [2022-02-20 23:39:15,139 INFO L290 TraceCheckUtils]: 1: Hoare triple {1828#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {1828#true} is VALID [2022-02-20 23:39:15,139 INFO L290 TraceCheckUtils]: 2: Hoare triple {1828#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {1828#true} is VALID [2022-02-20 23:39:15,139 INFO L290 TraceCheckUtils]: 3: Hoare triple {1828#true} assume !(main_~length2~0#1 < 1); {1828#true} is VALID [2022-02-20 23:39:15,142 INFO L290 TraceCheckUtils]: 4: Hoare triple {1828#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {1830#(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:15,142 INFO L290 TraceCheckUtils]: 5: Hoare triple {1830#(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); {1830#(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:15,143 INFO L290 TraceCheckUtils]: 6: Hoare triple {1830#(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; {1831#(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:15,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {1831#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {1832#(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:15,145 INFO L290 TraceCheckUtils]: 8: Hoare triple {1832#(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); {1829#false} is VALID [2022-02-20 23:39:15,145 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:15,145 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:15,146 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [128326674] [2022-02-20 23:39:15,146 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [128326674] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:15,146 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:15,146 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:15,146 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [924718035] [2022-02-20 23:39:15,146 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:15,146 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:15,147 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:15,147 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:15,153 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:15,153 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:39:15,153 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:15,154 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:39:15,154 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:39:15,154 INFO L87 Difference]: Start difference. First operand 63 states and 75 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:15,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,334 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-02-20 23:39:15,334 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:39:15,334 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:15,334 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:15,335 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:15,335 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 94 transitions. [2022-02-20 23:39:15,335 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:15,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 94 transitions. [2022-02-20 23:39:15,336 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 94 transitions. [2022-02-20 23:39:15,403 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:15,404 INFO L225 Difference]: With dead ends: 98 [2022-02-20 23:39:15,404 INFO L226 Difference]: Without dead ends: 98 [2022-02-20 23:39:15,405 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:15,405 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 124 mSDsluCounter, 58 mSDsCounter, 0 mSdLazyCounter, 70 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 124 SdHoareTripleChecker+Valid, 91 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.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:15,405 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [124 Valid, 91 Invalid, 71 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:15,406 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-02-20 23:39:15,407 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 65. [2022-02-20 23:39:15,407 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:15,407 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 65 states, 51 states have (on average 1.5294117647058822) internal successors, (78), 64 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:15,407 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 65 states, 51 states have (on average 1.5294117647058822) internal successors, (78), 64 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:15,408 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 65 states, 51 states have (on average 1.5294117647058822) internal successors, (78), 64 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:15,409 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,409 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-02-20 23:39:15,409 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-02-20 23:39:15,409 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:15,410 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:15,410 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 51 states have (on average 1.5294117647058822) internal successors, (78), 64 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 98 states. [2022-02-20 23:39:15,410 INFO L87 Difference]: Start difference. First operand has 65 states, 51 states have (on average 1.5294117647058822) internal successors, (78), 64 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 98 states. [2022-02-20 23:39:15,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,411 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-02-20 23:39:15,412 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-02-20 23:39:15,412 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:15,412 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:15,412 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:15,412 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:15,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 51 states have (on average 1.5294117647058822) internal successors, (78), 64 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:15,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 78 transitions. [2022-02-20 23:39:15,413 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 78 transitions. Word has length 9 [2022-02-20 23:39:15,413 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:15,413 INFO L470 AbstractCegarLoop]: Abstraction has 65 states and 78 transitions. [2022-02-20 23:39:15,414 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:15,414 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 78 transitions. [2022-02-20 23:39:15,414 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 23:39:15,414 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:15,414 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:15,414 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-02-20 23:39:15,414 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:15,415 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:15,415 INFO L85 PathProgramCache]: Analyzing trace with hash 629683418, now seen corresponding path program 1 times [2022-02-20 23:39:15,415 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:15,415 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2066089290] [2022-02-20 23:39:15,415 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:15,415 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:15,426 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:15,451 INFO L290 TraceCheckUtils]: 0: Hoare triple {2196#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2196#true} is VALID [2022-02-20 23:39:15,451 INFO L290 TraceCheckUtils]: 1: Hoare triple {2196#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {2196#true} is VALID [2022-02-20 23:39:15,451 INFO L290 TraceCheckUtils]: 2: Hoare triple {2196#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {2196#true} is VALID [2022-02-20 23:39:15,452 INFO L290 TraceCheckUtils]: 3: Hoare triple {2196#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2198#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:15,452 INFO L290 TraceCheckUtils]: 4: Hoare triple {2198#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {2199#(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_~length2~0#1|))} is VALID [2022-02-20 23:39:15,453 INFO L290 TraceCheckUtils]: 5: Hoare triple {2199#(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_~length2~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {2199#(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_~length2~0#1|))} is VALID [2022-02-20 23:39:15,453 INFO L290 TraceCheckUtils]: 6: Hoare triple {2199#(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_~length2~0#1|))} main_~i~1#1 := 0; {2199#(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_~length2~0#1|))} is VALID [2022-02-20 23:39:15,454 INFO L290 TraceCheckUtils]: 7: Hoare triple {2199#(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_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {2199#(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_~length2~0#1|))} is VALID [2022-02-20 23:39:15,454 INFO L290 TraceCheckUtils]: 8: Hoare triple {2199#(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_~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: L547-4 {2199#(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_~length2~0#1|))} is VALID [2022-02-20 23:39:15,455 INFO L290 TraceCheckUtils]: 9: Hoare triple {2199#(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_~length2~0#1|))} 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)); {2197#false} is VALID [2022-02-20 23:39:15,455 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:15,455 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:15,455 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2066089290] [2022-02-20 23:39:15,455 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2066089290] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:15,455 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:15,455 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:15,455 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1057922911] [2022-02-20 23:39:15,456 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:15,456 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:15,456 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:15,456 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:15,462 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:15,462 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:15,462 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:15,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:15,463 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:15,463 INFO L87 Difference]: Start difference. First operand 65 states and 78 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:15,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,522 INFO L93 Difference]: Finished difference Result 64 states and 77 transitions. [2022-02-20 23:39:15,522 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:15,523 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:15,523 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:15,523 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:15,523 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-02-20 23:39:15,523 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:15,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 54 transitions. [2022-02-20 23:39:15,524 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 54 transitions. [2022-02-20 23:39:15,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:15,561 INFO L225 Difference]: With dead ends: 64 [2022-02-20 23:39:15,561 INFO L226 Difference]: Without dead ends: 64 [2022-02-20 23:39:15,561 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:15,562 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 89 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 89 SdHoareTripleChecker+Valid, 36 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:15,562 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [89 Valid, 36 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:15,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 64 states. [2022-02-20 23:39:15,563 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 64 to 64. [2022-02-20 23:39:15,564 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:15,564 INFO L82 GeneralOperation]: Start isEquivalent. First operand 64 states. Second operand has 64 states, 51 states have (on average 1.5098039215686274) internal successors, (77), 63 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:15,564 INFO L74 IsIncluded]: Start isIncluded. First operand 64 states. Second operand has 64 states, 51 states have (on average 1.5098039215686274) internal successors, (77), 63 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:15,564 INFO L87 Difference]: Start difference. First operand 64 states. Second operand has 64 states, 51 states have (on average 1.5098039215686274) internal successors, (77), 63 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:15,565 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,565 INFO L93 Difference]: Finished difference Result 64 states and 77 transitions. [2022-02-20 23:39:15,565 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 77 transitions. [2022-02-20 23:39:15,566 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:15,566 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:15,566 INFO L74 IsIncluded]: Start isIncluded. First operand has 64 states, 51 states have (on average 1.5098039215686274) internal successors, (77), 63 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 64 states. [2022-02-20 23:39:15,566 INFO L87 Difference]: Start difference. First operand has 64 states, 51 states have (on average 1.5098039215686274) internal successors, (77), 63 states have internal predecessors, (77), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 64 states. [2022-02-20 23:39:15,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:15,567 INFO L93 Difference]: Finished difference Result 64 states and 77 transitions. [2022-02-20 23:39:15,567 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 77 transitions. [2022-02-20 23:39:15,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:15,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:15,567 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:15,567 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:15,568 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 64 states, 51 states have (on average 1.5098039215686274) internal successors, (77), 63 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:15,568 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 64 states to 64 states and 77 transitions. [2022-02-20 23:39:15,569 INFO L78 Accepts]: Start accepts. Automaton has 64 states and 77 transitions. Word has length 10 [2022-02-20 23:39:15,569 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:15,569 INFO L470 AbstractCegarLoop]: Abstraction has 64 states and 77 transitions. [2022-02-20 23:39:15,569 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:15,569 INFO L276 IsEmpty]: Start isEmpty. Operand 64 states and 77 transitions. [2022-02-20 23:39:15,570 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 12 [2022-02-20 23:39:15,570 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:15,570 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:15,570 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-02-20 23:39:15,570 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:15,570 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:15,570 INFO L85 PathProgramCache]: Analyzing trace with hash -1226025170, now seen corresponding path program 1 times [2022-02-20 23:39:15,571 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:15,571 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1032841684] [2022-02-20 23:39:15,571 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:15,571 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:15,595 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:15,666 INFO L290 TraceCheckUtils]: 0: Hoare triple {2458#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2458#true} is VALID [2022-02-20 23:39:15,666 INFO L290 TraceCheckUtils]: 1: Hoare triple {2458#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {2458#true} is VALID [2022-02-20 23:39:15,666 INFO L290 TraceCheckUtils]: 2: Hoare triple {2458#true} assume !(main_~length1~0#1 < 1); {2458#true} is VALID [2022-02-20 23:39:15,666 INFO L290 TraceCheckUtils]: 3: Hoare triple {2458#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2458#true} is VALID [2022-02-20 23:39:15,667 INFO L290 TraceCheckUtils]: 4: Hoare triple {2458#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {2460#(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:15,668 INFO L290 TraceCheckUtils]: 5: Hoare triple {2460#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {2460#(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:15,668 INFO L290 TraceCheckUtils]: 6: Hoare triple {2460#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {2460#(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:15,669 INFO L290 TraceCheckUtils]: 7: Hoare triple {2460#(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~nondet15#1; {2460#(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:15,669 INFO L290 TraceCheckUtils]: 8: Hoare triple {2460#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {2461#(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:15,670 INFO L290 TraceCheckUtils]: 9: Hoare triple {2461#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {2462#(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:15,670 INFO L290 TraceCheckUtils]: 10: Hoare triple {2462#(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); {2459#false} is VALID [2022-02-20 23:39:15,670 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:15,671 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:15,671 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1032841684] [2022-02-20 23:39:15,671 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1032841684] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:15,671 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1008257136] [2022-02-20 23:39:15,671 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:15,671 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:15,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:15,673 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:15,676 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:15,727 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:15,729 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 18 conjunts are in the unsatisfiable core [2022-02-20 23:39:15,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:15,744 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:15,908 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:39:15,914 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 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:15,927 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:16,027 INFO L290 TraceCheckUtils]: 0: Hoare triple {2458#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2458#true} is VALID [2022-02-20 23:39:16,028 INFO L290 TraceCheckUtils]: 1: Hoare triple {2458#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {2458#true} is VALID [2022-02-20 23:39:16,028 INFO L290 TraceCheckUtils]: 2: Hoare triple {2458#true} assume !(main_~length1~0#1 < 1); {2458#true} is VALID [2022-02-20 23:39:16,028 INFO L290 TraceCheckUtils]: 3: Hoare triple {2458#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2458#true} is VALID [2022-02-20 23:39:16,029 INFO L290 TraceCheckUtils]: 4: Hoare triple {2458#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {2478#(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:16,030 INFO L290 TraceCheckUtils]: 5: Hoare triple {2478#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {2478#(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:16,030 INFO L290 TraceCheckUtils]: 6: Hoare triple {2478#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {2478#(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:16,030 INFO L290 TraceCheckUtils]: 7: Hoare triple {2478#(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~nondet15#1; {2478#(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:16,031 INFO L290 TraceCheckUtils]: 8: Hoare triple {2478#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {2461#(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:16,032 INFO L290 TraceCheckUtils]: 9: Hoare triple {2461#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {2462#(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:16,032 INFO L290 TraceCheckUtils]: 10: Hoare triple {2462#(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); {2459#false} is VALID [2022-02-20 23:39:16,032 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:16,032 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:16,432 INFO L290 TraceCheckUtils]: 10: Hoare triple {2497#(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); {2459#false} is VALID [2022-02-20 23:39:16,433 INFO L290 TraceCheckUtils]: 9: Hoare triple {2501#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {2497#(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:16,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {2505#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {2501#(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:16,434 INFO L290 TraceCheckUtils]: 7: Hoare triple {2505#(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~nondet15#1; {2505#(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:16,435 INFO L290 TraceCheckUtils]: 6: Hoare triple {2505#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {2505#(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:16,436 INFO L290 TraceCheckUtils]: 5: Hoare triple {2505#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {2505#(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:16,437 INFO L290 TraceCheckUtils]: 4: Hoare triple {2458#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {2505#(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:16,437 INFO L290 TraceCheckUtils]: 3: Hoare triple {2458#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {2458#true} is VALID [2022-02-20 23:39:16,437 INFO L290 TraceCheckUtils]: 2: Hoare triple {2458#true} assume !(main_~length1~0#1 < 1); {2458#true} is VALID [2022-02-20 23:39:16,437 INFO L290 TraceCheckUtils]: 1: Hoare triple {2458#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {2458#true} is VALID [2022-02-20 23:39:16,437 INFO L290 TraceCheckUtils]: 0: Hoare triple {2458#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {2458#true} is VALID [2022-02-20 23:39:16,437 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:16,438 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1008257136] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:16,438 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:16,438 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [4, 4, 4] total 8 [2022-02-20 23:39:16,438 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [38394153] [2022-02-20 23:39:16,438 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:16,439 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 23:39:16,439 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:16,439 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:16,454 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:16,454 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:39:16,455 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:16,455 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:39:16,455 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:39:16,455 INFO L87 Difference]: Start difference. First operand 64 states and 77 transitions. Second operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:16,963 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:16,964 INFO L93 Difference]: Finished difference Result 149 states and 173 transitions. [2022-02-20 23:39:16,964 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:39:16,964 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 11 [2022-02-20 23:39:16,964 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:16,964 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:16,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 140 transitions. [2022-02-20 23:39:16,965 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:16,966 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 140 transitions. [2022-02-20 23:39:16,966 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 140 transitions. [2022-02-20 23:39:17,066 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:17,068 INFO L225 Difference]: With dead ends: 149 [2022-02-20 23:39:17,068 INFO L226 Difference]: Without dead ends: 149 [2022-02-20 23:39:17,068 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 16 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=49, Invalid=83, Unknown=0, NotChecked=0, Total=132 [2022-02-20 23:39:17,069 INFO L933 BasicCegarLoop]: 84 mSDtfsCounter, 247 mSDsluCounter, 192 mSDsCounter, 0 mSdLazyCounter, 194 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 247 SdHoareTripleChecker+Valid, 276 SdHoareTripleChecker+Invalid, 199 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 194 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:17,069 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [247 Valid, 276 Invalid, 199 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 194 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:17,069 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 149 states. [2022-02-20 23:39:17,070 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 149 to 59. [2022-02-20 23:39:17,070 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:17,071 INFO L82 GeneralOperation]: Start isEquivalent. First operand 149 states. Second operand has 59 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 58 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:17,071 INFO L74 IsIncluded]: Start isIncluded. First operand 149 states. Second operand has 59 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 58 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:17,071 INFO L87 Difference]: Start difference. First operand 149 states. Second operand has 59 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 58 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:17,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:17,073 INFO L93 Difference]: Finished difference Result 149 states and 173 transitions. [2022-02-20 23:39:17,073 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 173 transitions. [2022-02-20 23:39:17,073 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:17,073 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:17,074 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 58 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 149 states. [2022-02-20 23:39:17,074 INFO L87 Difference]: Start difference. First operand has 59 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 58 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 149 states. [2022-02-20 23:39:17,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:17,076 INFO L93 Difference]: Finished difference Result 149 states and 173 transitions. [2022-02-20 23:39:17,077 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 173 transitions. [2022-02-20 23:39:17,077 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:17,077 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:17,077 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:17,077 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:17,077 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 47 states have (on average 1.4680851063829787) internal successors, (69), 58 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:17,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 69 transitions. [2022-02-20 23:39:17,078 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 69 transitions. Word has length 11 [2022-02-20 23:39:17,078 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:17,078 INFO L470 AbstractCegarLoop]: Abstraction has 59 states and 69 transitions. [2022-02-20 23:39:17,079 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.875) internal successors, (23), 9 states have internal predecessors, (23), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,079 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-02-20 23:39:17,079 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 23:39:17,079 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:17,079 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:17,097 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:17,291 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:17,291 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr8REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:17,292 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:17,292 INFO L85 PathProgramCache]: Analyzing trace with hash -464624131, now seen corresponding path program 1 times [2022-02-20 23:39:17,292 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:17,292 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1284484838] [2022-02-20 23:39:17,292 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:17,292 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:17,316 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:17,342 INFO L290 TraceCheckUtils]: 0: Hoare triple {3041#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3041#true} is VALID [2022-02-20 23:39:17,342 INFO L290 TraceCheckUtils]: 1: Hoare triple {3041#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {3041#true} is VALID [2022-02-20 23:39:17,343 INFO L290 TraceCheckUtils]: 2: Hoare triple {3041#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3041#true} is VALID [2022-02-20 23:39:17,343 INFO L290 TraceCheckUtils]: 3: Hoare triple {3041#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {3041#true} is VALID [2022-02-20 23:39:17,343 INFO L290 TraceCheckUtils]: 4: Hoare triple {3041#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {3041#true} is VALID [2022-02-20 23:39:17,343 INFO L290 TraceCheckUtils]: 5: Hoare triple {3041#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {3041#true} is VALID [2022-02-20 23:39:17,343 INFO L290 TraceCheckUtils]: 6: Hoare triple {3041#true} main_~i~1#1 := 0; {3041#true} is VALID [2022-02-20 23:39:17,346 INFO L290 TraceCheckUtils]: 7: Hoare triple {3041#true} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {3041#true} is VALID [2022-02-20 23:39:17,346 INFO L290 TraceCheckUtils]: 8: Hoare triple {3041#true} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {3043#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:39:17,347 INFO L290 TraceCheckUtils]: 9: Hoare triple {3043#(= (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: L552 {3043#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} is VALID [2022-02-20 23:39:17,347 INFO L290 TraceCheckUtils]: 10: Hoare triple {3043#(= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {3044#(= (select |#valid| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1)} is VALID [2022-02-20 23:39:17,348 INFO L290 TraceCheckUtils]: 11: Hoare triple {3044#(= (select |#valid| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1)} assume !(1 == #valid[cstrcspn_~sc1~0#1.base]); {3042#false} is VALID [2022-02-20 23:39:17,348 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:17,348 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:17,348 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1284484838] [2022-02-20 23:39:17,348 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1284484838] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:17,348 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:17,348 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:17,349 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [802280446] [2022-02-20 23:39:17,349 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:17,349 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 23:39:17,349 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:17,349 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,358 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:17,358 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 23:39:17,358 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:17,359 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 23:39:17,359 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 23:39:17,359 INFO L87 Difference]: Start difference. First operand 59 states and 69 transitions. Second operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:17,430 INFO L93 Difference]: Finished difference Result 57 states and 67 transitions. [2022-02-20 23:39:17,430 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:17,430 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 23:39:17,434 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:17,434 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2022-02-20 23:39:17,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 52 transitions. [2022-02-20 23:39:17,435 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 52 transitions. [2022-02-20 23:39:17,468 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:17,469 INFO L225 Difference]: With dead ends: 57 [2022-02-20 23:39:17,469 INFO L226 Difference]: Without dead ends: 57 [2022-02-20 23:39:17,469 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:17,469 INFO L933 BasicCegarLoop]: 33 mSDtfsCounter, 63 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 30 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 30 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:17,469 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [63 Valid, 51 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 30 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:17,470 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2022-02-20 23:39:17,471 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2022-02-20 23:39:17,471 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:17,471 INFO L82 GeneralOperation]: Start isEquivalent. First operand 57 states. Second operand has 57 states, 47 states have (on average 1.425531914893617) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,471 INFO L74 IsIncluded]: Start isIncluded. First operand 57 states. Second operand has 57 states, 47 states have (on average 1.425531914893617) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,471 INFO L87 Difference]: Start difference. First operand 57 states. Second operand has 57 states, 47 states have (on average 1.425531914893617) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,472 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:17,472 INFO L93 Difference]: Finished difference Result 57 states and 67 transitions. [2022-02-20 23:39:17,472 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 67 transitions. [2022-02-20 23:39:17,472 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:17,472 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:17,472 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 47 states have (on average 1.425531914893617) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states 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:17,473 INFO L87 Difference]: Start difference. First operand has 57 states, 47 states have (on average 1.425531914893617) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states 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:17,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:17,473 INFO L93 Difference]: Finished difference Result 57 states and 67 transitions. [2022-02-20 23:39:17,473 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 67 transitions. [2022-02-20 23:39:17,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:17,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:17,473 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:17,473 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:17,474 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 47 states have (on average 1.425531914893617) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 67 transitions. [2022-02-20 23:39:17,474 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 67 transitions. Word has length 12 [2022-02-20 23:39:17,474 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:17,474 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 67 transitions. [2022-02-20 23:39:17,474 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 3 states have (on average 4.0) internal successors, (12), 4 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,474 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 67 transitions. [2022-02-20 23:39:17,475 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 13 [2022-02-20 23:39:17,475 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:17,475 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:17,475 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2022-02-20 23:39:17,475 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:17,475 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:17,475 INFO L85 PathProgramCache]: Analyzing trace with hash -464624130, now seen corresponding path program 1 times [2022-02-20 23:39:17,475 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:17,476 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [795990534] [2022-02-20 23:39:17,476 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:17,476 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:17,487 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:17,520 INFO L290 TraceCheckUtils]: 0: Hoare triple {3277#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3277#true} is VALID [2022-02-20 23:39:17,520 INFO L290 TraceCheckUtils]: 1: Hoare triple {3277#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {3277#true} is VALID [2022-02-20 23:39:17,520 INFO L290 TraceCheckUtils]: 2: Hoare triple {3277#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3279#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:17,521 INFO L290 TraceCheckUtils]: 3: Hoare triple {3279#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {3279#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:17,522 INFO L290 TraceCheckUtils]: 4: Hoare triple {3279#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {3280#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:17,522 INFO L290 TraceCheckUtils]: 5: Hoare triple {3280#(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); {3280#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:17,523 INFO L290 TraceCheckUtils]: 6: Hoare triple {3280#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {3280#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:17,530 INFO L290 TraceCheckUtils]: 7: Hoare triple {3280#(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); {3280#(and (<= 1 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:17,530 INFO L290 TraceCheckUtils]: 8: Hoare triple {3280#(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: L547-4 {3281#(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:17,531 INFO L290 TraceCheckUtils]: 9: Hoare triple {3281#(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: L552 {3281#(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:17,531 INFO L290 TraceCheckUtils]: 10: Hoare triple {3281#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {3282#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:17,532 INFO L290 TraceCheckUtils]: 11: Hoare triple {3282#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {3278#false} is VALID [2022-02-20 23:39:17,532 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:17,532 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:17,532 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [795990534] [2022-02-20 23:39:17,532 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [795990534] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:17,533 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:17,533 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 23:39:17,533 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [674245403] [2022-02-20 23:39:17,533 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:17,533 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 23:39:17,533 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:17,534 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 5 states have (on average 2.4) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,541 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:17,541 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 23:39:17,541 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:17,541 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 23:39:17,541 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-02-20 23:39:17,542 INFO L87 Difference]: Start difference. First operand 57 states and 67 transitions. Second operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:17,699 INFO L93 Difference]: Finished difference Result 80 states and 93 transitions. [2022-02-20 23:39:17,699 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:39:17,699 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 12 [2022-02-20 23:39:17,699 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:17,699 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-02-20 23:39:17,700 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 5 states have (on average 2.4) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,700 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 78 transitions. [2022-02-20 23:39:17,700 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 78 transitions. [2022-02-20 23:39:17,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:17,755 INFO L225 Difference]: With dead ends: 80 [2022-02-20 23:39:17,755 INFO L226 Difference]: Without dead ends: 80 [2022-02-20 23:39:17,755 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:17,755 INFO L933 BasicCegarLoop]: 28 mSDtfsCounter, 161 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 161 SdHoareTripleChecker+Valid, 65 SdHoareTripleChecker+Invalid, 53 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:17,755 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [161 Valid, 65 Invalid, 53 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:17,756 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-02-20 23:39:17,756 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 60. [2022-02-20 23:39:17,756 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:17,757 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand has 60 states, 50 states have (on average 1.42) internal successors, (71), 59 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,757 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand has 60 states, 50 states have (on average 1.42) internal successors, (71), 59 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,757 INFO L87 Difference]: Start difference. First operand 80 states. Second operand has 60 states, 50 states have (on average 1.42) internal successors, (71), 59 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:17,758 INFO L93 Difference]: Finished difference Result 80 states and 93 transitions. [2022-02-20 23:39:17,758 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 93 transitions. [2022-02-20 23:39:17,758 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:17,758 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:17,758 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 50 states have (on average 1.42) internal successors, (71), 59 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 80 states. [2022-02-20 23:39:17,761 INFO L87 Difference]: Start difference. First operand has 60 states, 50 states have (on average 1.42) internal successors, (71), 59 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 80 states. [2022-02-20 23:39:17,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:17,762 INFO L93 Difference]: Finished difference Result 80 states and 93 transitions. [2022-02-20 23:39:17,762 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 93 transitions. [2022-02-20 23:39:17,762 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:17,762 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:17,762 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:17,762 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:17,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 50 states have (on average 1.42) internal successors, (71), 59 states have internal predecessors, (71), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 71 transitions. [2022-02-20 23:39:17,763 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 71 transitions. Word has length 12 [2022-02-20 23:39:17,763 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:17,763 INFO L470 AbstractCegarLoop]: Abstraction has 60 states and 71 transitions. [2022-02-20 23:39:17,763 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 5 states have (on average 2.4) internal successors, (12), 6 states have internal predecessors, (12), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:17,763 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 71 transitions. [2022-02-20 23:39:17,763 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 14 [2022-02-20 23:39:17,763 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:17,763 INFO L514 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:17,763 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2022-02-20 23:39:17,763 INFO L402 AbstractCegarLoop]: === Iteration 12 === Targeting ULTIMATE.startErr3REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:17,764 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:17,764 INFO L85 PathProgramCache]: Analyzing trace with hash -1862804906, now seen corresponding path program 1 times [2022-02-20 23:39:17,764 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:17,764 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [410595948] [2022-02-20 23:39:17,764 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:17,764 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:17,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:17,838 INFO L290 TraceCheckUtils]: 0: Hoare triple {3589#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3589#true} is VALID [2022-02-20 23:39:17,838 INFO L290 TraceCheckUtils]: 1: Hoare triple {3589#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {3589#true} is VALID [2022-02-20 23:39:17,838 INFO L290 TraceCheckUtils]: 2: Hoare triple {3589#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3589#true} is VALID [2022-02-20 23:39:17,838 INFO L290 TraceCheckUtils]: 3: Hoare triple {3589#true} assume !(main_~length2~0#1 < 1); {3589#true} is VALID [2022-02-20 23:39:17,851 INFO L290 TraceCheckUtils]: 4: Hoare triple {3589#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {3591#(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:17,852 INFO L290 TraceCheckUtils]: 5: Hoare triple {3591#(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); {3591#(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:17,853 INFO L290 TraceCheckUtils]: 6: Hoare triple {3591#(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; {3592#(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:17,853 INFO L290 TraceCheckUtils]: 7: Hoare triple {3592#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {3592#(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:17,854 INFO L290 TraceCheckUtils]: 8: Hoare triple {3592#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {3592#(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:17,854 INFO L290 TraceCheckUtils]: 9: Hoare triple {3592#(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~nondet17#1; {3592#(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:17,855 INFO L290 TraceCheckUtils]: 10: Hoare triple {3592#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {3593#(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:17,855 INFO L290 TraceCheckUtils]: 11: Hoare triple {3593#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {3594#(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:17,856 INFO L290 TraceCheckUtils]: 12: Hoare triple {3594#(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); {3590#false} is VALID [2022-02-20 23:39:17,856 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:17,856 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:17,857 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [410595948] [2022-02-20 23:39:17,857 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [410595948] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:17,857 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2125682502] [2022-02-20 23:39:17,857 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:17,857 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:17,857 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:17,860 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:17,861 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:17,901 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:17,902 INFO L263 TraceCheckSpWp]: Trace formula consists of 73 conjuncts, 12 conjunts are in the unsatisfiable core [2022-02-20 23:39:17,908 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:17,908 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:17,959 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:39:17,960 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 1 case distinctions, treesize of input 9 treesize of output 15 [2022-02-20 23:39:18,066 INFO L290 TraceCheckUtils]: 0: Hoare triple {3589#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3589#true} is VALID [2022-02-20 23:39:18,067 INFO L290 TraceCheckUtils]: 1: Hoare triple {3589#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {3589#true} is VALID [2022-02-20 23:39:18,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {3589#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3589#true} is VALID [2022-02-20 23:39:18,067 INFO L290 TraceCheckUtils]: 3: Hoare triple {3589#true} assume !(main_~length2~0#1 < 1); {3589#true} is VALID [2022-02-20 23:39:18,068 INFO L290 TraceCheckUtils]: 4: Hoare triple {3589#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {3610#(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:18,068 INFO L290 TraceCheckUtils]: 5: Hoare triple {3610#(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); {3610#(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:18,069 INFO L290 TraceCheckUtils]: 6: Hoare triple {3610#(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; {3617#(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:18,069 INFO L290 TraceCheckUtils]: 7: Hoare triple {3617#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {3617#(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:18,070 INFO L290 TraceCheckUtils]: 8: Hoare triple {3617#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {3617#(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:18,070 INFO L290 TraceCheckUtils]: 9: Hoare triple {3617#(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~nondet17#1; {3617#(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:18,071 INFO L290 TraceCheckUtils]: 10: Hoare triple {3617#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {3630#(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:18,071 INFO L290 TraceCheckUtils]: 11: Hoare triple {3630#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {3594#(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:18,072 INFO L290 TraceCheckUtils]: 12: Hoare triple {3594#(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); {3590#false} is VALID [2022-02-20 23:39:18,072 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:18,072 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:18,401 INFO L290 TraceCheckUtils]: 12: Hoare triple {3637#(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); {3590#false} is VALID [2022-02-20 23:39:18,402 INFO L290 TraceCheckUtils]: 11: Hoare triple {3641#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {3637#(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:18,403 INFO L290 TraceCheckUtils]: 10: Hoare triple {3645#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {3641#(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:18,403 INFO L290 TraceCheckUtils]: 9: Hoare triple {3645#(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~nondet17#1; {3645#(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:18,404 INFO L290 TraceCheckUtils]: 8: Hoare triple {3645#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {3645#(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:18,404 INFO L290 TraceCheckUtils]: 7: Hoare triple {3645#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {3645#(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:18,405 INFO L290 TraceCheckUtils]: 6: Hoare triple {3658#(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; {3645#(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:18,405 INFO L290 TraceCheckUtils]: 5: Hoare triple {3658#(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); {3658#(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:18,406 INFO L290 TraceCheckUtils]: 4: Hoare triple {3589#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {3658#(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:18,406 INFO L290 TraceCheckUtils]: 3: Hoare triple {3589#true} assume !(main_~length2~0#1 < 1); {3589#true} is VALID [2022-02-20 23:39:18,406 INFO L290 TraceCheckUtils]: 2: Hoare triple {3589#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {3589#true} is VALID [2022-02-20 23:39:18,407 INFO L290 TraceCheckUtils]: 1: Hoare triple {3589#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {3589#true} is VALID [2022-02-20 23:39:18,407 INFO L290 TraceCheckUtils]: 0: Hoare triple {3589#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {3589#true} is VALID [2022-02-20 23:39:18,407 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:18,407 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2125682502] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:18,407 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:18,407 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5, 5] total 12 [2022-02-20 23:39:18,407 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1959824884] [2022-02-20 23:39:18,408 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:18,408 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:18,408 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:18,408 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:18,428 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:18,428 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-02-20 23:39:18,428 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:18,429 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-02-20 23:39:18,429 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=105, Unknown=0, NotChecked=0, Total=156 [2022-02-20 23:39:18,429 INFO L87 Difference]: Start difference. First operand 60 states and 71 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:18,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:18,923 INFO L93 Difference]: Finished difference Result 124 states and 144 transitions. [2022-02-20 23:39:18,923 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 23:39:18,924 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:18,924 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:18,924 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:18,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 120 transitions. [2022-02-20 23:39:18,925 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:18,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 120 transitions. [2022-02-20 23:39:18,925 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 120 transitions. [2022-02-20 23:39:19,029 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 120 edges. 120 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:19,030 INFO L225 Difference]: With dead ends: 124 [2022-02-20 23:39:19,030 INFO L226 Difference]: Without dead ends: 124 [2022-02-20 23:39:19,031 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:19,031 INFO L933 BasicCegarLoop]: 67 mSDtfsCounter, 317 mSDsluCounter, 151 mSDsCounter, 0 mSdLazyCounter, 173 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 317 SdHoareTripleChecker+Valid, 218 SdHoareTripleChecker+Invalid, 184 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 173 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:19,032 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [317 Valid, 218 Invalid, 184 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 173 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:19,032 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 124 states. [2022-02-20 23:39:19,033 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 124 to 57. [2022-02-20 23:39:19,033 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:19,033 INFO L82 GeneralOperation]: Start isEquivalent. First operand 124 states. Second operand has 57 states, 48 states have (on average 1.3958333333333333) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:19,033 INFO L74 IsIncluded]: Start isIncluded. First operand 124 states. Second operand has 57 states, 48 states have (on average 1.3958333333333333) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:19,033 INFO L87 Difference]: Start difference. First operand 124 states. Second operand has 57 states, 48 states have (on average 1.3958333333333333) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:19,035 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,035 INFO L93 Difference]: Finished difference Result 124 states and 144 transitions. [2022-02-20 23:39:19,035 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 144 transitions. [2022-02-20 23:39:19,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:19,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:19,036 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 48 states have (on average 1.3958333333333333) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 124 states. [2022-02-20 23:39:19,036 INFO L87 Difference]: Start difference. First operand has 57 states, 48 states have (on average 1.3958333333333333) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 124 states. [2022-02-20 23:39:19,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,037 INFO L93 Difference]: Finished difference Result 124 states and 144 transitions. [2022-02-20 23:39:19,037 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 144 transitions. [2022-02-20 23:39:19,038 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:19,038 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:19,038 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:19,038 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:19,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 48 states have (on average 1.3958333333333333) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:19,039 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 67 transitions. [2022-02-20 23:39:19,039 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 67 transitions. Word has length 13 [2022-02-20 23:39:19,039 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:19,039 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 67 transitions. [2022-02-20 23:39:19,039 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:19,039 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 67 transitions. [2022-02-20 23:39:19,040 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:39:19,040 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:19,040 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:19,058 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:19,255 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,SelfDestructingSolverStorable11 [2022-02-20 23:39:19,255 INFO L402 AbstractCegarLoop]: === Iteration 13 === 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:19,256 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:19,256 INFO L85 PathProgramCache]: Analyzing trace with hash -1433224404, now seen corresponding path program 1 times [2022-02-20 23:39:19,256 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:19,256 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2076753815] [2022-02-20 23:39:19,256 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:19,256 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:19,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:19,313 INFO L290 TraceCheckUtils]: 0: Hoare triple {4111#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4111#true} is VALID [2022-02-20 23:39:19,314 INFO L290 TraceCheckUtils]: 1: Hoare triple {4111#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {4113#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:39:19,314 INFO L290 TraceCheckUtils]: 2: Hoare triple {4113#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {4113#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:39:19,315 INFO L290 TraceCheckUtils]: 3: Hoare triple {4113#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {4113#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:39:19,316 INFO L290 TraceCheckUtils]: 4: Hoare triple {4113#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {4114#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)))} is VALID [2022-02-20 23:39:19,316 INFO L290 TraceCheckUtils]: 5: Hoare triple {4114#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4114#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)))} is VALID [2022-02-20 23:39:19,317 INFO L290 TraceCheckUtils]: 6: Hoare triple {4114#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)))} main_~i~1#1 := 0; {4114#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)))} is VALID [2022-02-20 23:39:19,317 INFO L290 TraceCheckUtils]: 7: Hoare triple {4114#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {4114#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)))} is VALID [2022-02-20 23:39:19,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {4114#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (or (not (= (select |#valid| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} is VALID [2022-02-20 23:39:19,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} is VALID [2022-02-20 23:39:19,319 INFO L290 TraceCheckUtils]: 10: Hoare triple {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} is VALID [2022-02-20 23:39:19,319 INFO L290 TraceCheckUtils]: 11: Hoare triple {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} is VALID [2022-02-20 23:39:19,320 INFO L290 TraceCheckUtils]: 12: Hoare triple {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} assume !(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1; {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} is VALID [2022-02-20 23:39:19,320 INFO L290 TraceCheckUtils]: 13: Hoare triple {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} cstrcspn_#res#1 := (if cstrcspn_~sc1~0#1.offset - cstrcspn_~s1#1.offset < 0 && 0 != (cstrcspn_~sc1~0#1.offset - cstrcspn_~s1#1.offset) % 1 then 1 + (cstrcspn_~sc1~0#1.offset - cstrcspn_~s1#1.offset) / 1 else (cstrcspn_~sc1~0#1.offset - cstrcspn_~s1#1.offset) / 1); {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} is VALID [2022-02-20 23:39:19,324 INFO L290 TraceCheckUtils]: 14: Hoare triple {4115#(and (not (= |ULTIMATE.start_main_#t~malloc12#1.base| |ULTIMATE.start_main_#t~malloc13#1.base|)) (= (store (store |#valid| |ULTIMATE.start_main_#t~malloc13#1.base| 0) |ULTIMATE.start_main_#t~malloc12#1.base| 0) |ULTIMATE.start_main_old_#valid#1|))} main_#t~ret18#1 := cstrcspn_#res#1;assume { :end_inline_cstrcspn } true;assume -2147483648 <= main_#t~ret18#1 && main_#t~ret18#1 <= 2147483647;main_#res#1 := main_#t~ret18#1;havoc main_#t~ret18#1;call ULTIMATE.dealloc(main_#t~malloc12#1.base, main_#t~malloc12#1.offset);havoc main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call ULTIMATE.dealloc(main_#t~malloc13#1.base, main_#t~malloc13#1.offset);havoc main_#t~malloc13#1.base, main_#t~malloc13#1.offset; {4113#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} is VALID [2022-02-20 23:39:19,324 INFO L290 TraceCheckUtils]: 15: Hoare triple {4113#(= |ULTIMATE.start_main_old_#valid#1| |#valid|)} assume !(#valid == main_old_#valid#1); {4112#false} is VALID [2022-02-20 23:39:19,324 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:19,325 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:19,325 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2076753815] [2022-02-20 23:39:19,325 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2076753815] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:19,325 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:19,325 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:19,325 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1105641845] [2022-02-20 23:39:19,325 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:19,325 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:19,326 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:19,326 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:19,337 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:19,337 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:39:19,337 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:19,337 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:39:19,337 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:39:19,337 INFO L87 Difference]: Start difference. First operand 57 states and 67 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:19,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,426 INFO L93 Difference]: Finished difference Result 56 states and 66 transitions. [2022-02-20 23:39:19,427 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 23:39:19,427 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:19,427 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:19,427 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:19,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2022-02-20 23:39:19,427 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:19,427 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 49 transitions. [2022-02-20 23:39:19,428 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 49 transitions. [2022-02-20 23:39:19,465 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:19,466 INFO L225 Difference]: With dead ends: 56 [2022-02-20 23:39:19,466 INFO L226 Difference]: Without dead ends: 53 [2022-02-20 23:39:19,466 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:19,466 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 73 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 31 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 73 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 31 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:19,466 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [73 Valid, 66 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 31 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:19,467 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-02-20 23:39:19,467 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 53. [2022-02-20 23:39:19,467 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:19,467 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 53 states, 45 states have (on average 1.3555555555555556) 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:19,468 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 53 states, 45 states have (on average 1.3555555555555556) 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:19,468 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 53 states, 45 states have (on average 1.3555555555555556) 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:19,468 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,468 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-02-20 23:39:19,469 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:19,469 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:19,469 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:19,469 INFO L74 IsIncluded]: Start isIncluded. First operand has 53 states, 45 states have (on average 1.3555555555555556) 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:19,469 INFO L87 Difference]: Start difference. First operand has 53 states, 45 states have (on average 1.3555555555555556) 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:19,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,470 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-02-20 23:39:19,470 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:19,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:19,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:19,470 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:19,470 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:19,470 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 53 states, 45 states have (on average 1.3555555555555556) 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:19,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 53 states to 53 states and 61 transitions. [2022-02-20 23:39:19,471 INFO L78 Accepts]: Start accepts. Automaton has 53 states and 61 transitions. Word has length 16 [2022-02-20 23:39:19,471 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:19,471 INFO L470 AbstractCegarLoop]: Abstraction has 53 states and 61 transitions. [2022-02-20 23:39:19,471 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:19,471 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-02-20 23:39:19,472 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:39:19,472 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:19,472 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:19,472 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2022-02-20 23:39:19,472 INFO L402 AbstractCegarLoop]: === Iteration 14 === Targeting ULTIMATE.startErr12REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:19,472 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:19,472 INFO L85 PathProgramCache]: Analyzing trace with hash -1433207485, now seen corresponding path program 1 times [2022-02-20 23:39:19,473 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:19,473 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [981091927] [2022-02-20 23:39:19,473 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:19,473 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:19,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:19,516 INFO L290 TraceCheckUtils]: 0: Hoare triple {4333#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4333#true} is VALID [2022-02-20 23:39:19,517 INFO L290 TraceCheckUtils]: 1: Hoare triple {4333#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {4333#true} is VALID [2022-02-20 23:39:19,517 INFO L290 TraceCheckUtils]: 2: Hoare triple {4333#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {4333#true} is VALID [2022-02-20 23:39:19,517 INFO L290 TraceCheckUtils]: 3: Hoare triple {4333#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {4333#true} is VALID [2022-02-20 23:39:19,517 INFO L290 TraceCheckUtils]: 4: Hoare triple {4333#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {4333#true} is VALID [2022-02-20 23:39:19,517 INFO L290 TraceCheckUtils]: 5: Hoare triple {4333#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4333#true} is VALID [2022-02-20 23:39:19,517 INFO L290 TraceCheckUtils]: 6: Hoare triple {4333#true} main_~i~1#1 := 0; {4333#true} is VALID [2022-02-20 23:39:19,517 INFO L290 TraceCheckUtils]: 7: Hoare triple {4333#true} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {4333#true} is VALID [2022-02-20 23:39:19,517 INFO L290 TraceCheckUtils]: 8: Hoare triple {4333#true} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {4333#true} is VALID [2022-02-20 23:39:19,518 INFO L290 TraceCheckUtils]: 9: Hoare triple {4333#true} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {4335#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} is VALID [2022-02-20 23:39:19,518 INFO L290 TraceCheckUtils]: 10: Hoare triple {4335#(= (select |#valid| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1)} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {4336#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s2#1.base|) 1)} is VALID [2022-02-20 23:39:19,519 INFO L290 TraceCheckUtils]: 11: Hoare triple {4336#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s2#1.base|) 1)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {4336#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s2#1.base|) 1)} is VALID [2022-02-20 23:39:19,519 INFO L290 TraceCheckUtils]: 12: Hoare triple {4336#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s2#1.base|) 1)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {4337#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1)} is VALID [2022-02-20 23:39:19,519 INFO L290 TraceCheckUtils]: 13: Hoare triple {4337#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1)} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {4337#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1)} is VALID [2022-02-20 23:39:19,520 INFO L290 TraceCheckUtils]: 14: Hoare triple {4337#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1)} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {4337#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1)} is VALID [2022-02-20 23:39:19,520 INFO L290 TraceCheckUtils]: 15: Hoare triple {4337#(= (select |#valid| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1)} assume !(1 == #valid[cstrcspn_~s~0#1.base]); {4334#false} is VALID [2022-02-20 23:39:19,520 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:19,520 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:19,520 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [981091927] [2022-02-20 23:39:19,521 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [981091927] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:19,521 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:19,521 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 23:39:19,521 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [768184985] [2022-02-20 23:39:19,521 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:19,521 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:19,521 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:19,522 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:19,533 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:19,533 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 23:39:19,534 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:19,534 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 23:39:19,534 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 23:39:19,534 INFO L87 Difference]: Start difference. First operand 53 states and 61 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:19,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,622 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:39:19,623 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 23:39:19,623 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:19,623 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:19,623 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:19,623 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-02-20 23:39:19,623 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:19,624 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-02-20 23:39:19,624 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 46 transitions. [2022-02-20 23:39:19,655 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:19,656 INFO L225 Difference]: With dead ends: 50 [2022-02-20 23:39:19,656 INFO L226 Difference]: Without dead ends: 50 [2022-02-20 23:39:19,656 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:19,656 INFO L933 BasicCegarLoop]: 26 mSDtfsCounter, 66 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 66 SdHoareTripleChecker+Valid, 56 SdHoareTripleChecker+Invalid, 41 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:19,657 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [66 Valid, 56 Invalid, 41 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:19,657 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-02-20 23:39:19,657 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 50. [2022-02-20 23:39:19,658 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:19,658 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 50 states, 45 states have (on average 1.288888888888889) 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:19,658 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 50 states, 45 states have (on average 1.288888888888889) 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:19,658 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 50 states, 45 states have (on average 1.288888888888889) 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:19,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,659 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:39:19,659 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-02-20 23:39:19,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:19,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:19,659 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 45 states have (on average 1.288888888888889) 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:19,659 INFO L87 Difference]: Start difference. First operand has 50 states, 45 states have (on average 1.288888888888889) 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:19,660 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,660 INFO L93 Difference]: Finished difference Result 50 states and 58 transitions. [2022-02-20 23:39:19,660 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-02-20 23:39:19,660 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:19,660 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:19,660 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:19,661 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:19,661 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 45 states have (on average 1.288888888888889) 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:19,661 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 58 transitions. [2022-02-20 23:39:19,661 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 58 transitions. Word has length 16 [2022-02-20 23:39:19,661 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:19,661 INFO L470 AbstractCegarLoop]: Abstraction has 50 states and 58 transitions. [2022-02-20 23:39:19,662 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:19,662 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 58 transitions. [2022-02-20 23:39:19,662 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 23:39:19,662 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:19,662 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:19,662 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2022-02-20 23:39:19,662 INFO L402 AbstractCegarLoop]: === Iteration 15 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:19,663 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:19,663 INFO L85 PathProgramCache]: Analyzing trace with hash -1433207484, now seen corresponding path program 1 times [2022-02-20 23:39:19,663 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:19,663 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1758112966] [2022-02-20 23:39:19,663 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:19,663 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:19,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:19,721 INFO L290 TraceCheckUtils]: 0: Hoare triple {4544#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4544#true} is VALID [2022-02-20 23:39:19,722 INFO L290 TraceCheckUtils]: 1: Hoare triple {4544#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {4544#true} is VALID [2022-02-20 23:39:19,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {4544#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {4544#true} is VALID [2022-02-20 23:39:19,722 INFO L290 TraceCheckUtils]: 3: Hoare triple {4544#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {4546#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:19,723 INFO L290 TraceCheckUtils]: 4: Hoare triple {4546#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 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:19,723 INFO L290 TraceCheckUtils]: 5: Hoare triple {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= |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); {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 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:19,724 INFO L290 TraceCheckUtils]: 6: Hoare triple {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~length2~0#1| (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_~i~1#1 := 0; {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 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:19,724 INFO L290 TraceCheckUtils]: 7: Hoare triple {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 |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); {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 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:19,725 INFO L290 TraceCheckUtils]: 8: Hoare triple {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 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(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 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:19,725 INFO L290 TraceCheckUtils]: 9: Hoare triple {4547#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 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(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {4548#(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:19,729 INFO L290 TraceCheckUtils]: 10: Hoare triple {4548#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {4549#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:19,729 INFO L290 TraceCheckUtils]: 11: Hoare triple {4549#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {4549#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:19,730 INFO L290 TraceCheckUtils]: 12: Hoare triple {4549#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {4550#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:19,730 INFO L290 TraceCheckUtils]: 13: Hoare triple {4550#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {4550#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:19,731 INFO L290 TraceCheckUtils]: 14: Hoare triple {4550#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {4550#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:19,731 INFO L290 TraceCheckUtils]: 15: Hoare triple {4550#(and (<= 1 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {4545#false} is VALID [2022-02-20 23:39:19,731 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:19,731 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:19,731 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1758112966] [2022-02-20 23:39:19,732 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1758112966] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:19,732 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:19,732 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-02-20 23:39:19,732 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [566356539] [2022-02-20 23:39:19,732 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:19,732 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 7 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:19,732 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:19,733 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 7 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:19,744 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:19,744 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:39:19,744 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:19,744 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:39:19,744 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:39:19,745 INFO L87 Difference]: Start difference. First operand 50 states and 58 transitions. Second operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 7 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:19,888 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,888 INFO L93 Difference]: Finished difference Result 62 states and 72 transitions. [2022-02-20 23:39:19,888 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 23:39:19,888 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 7 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:19,888 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:19,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 7 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:19,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 58 transitions. [2022-02-20 23:39:19,889 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 7 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:19,889 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 58 transitions. [2022-02-20 23:39:19,889 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 58 transitions. [2022-02-20 23:39:19,927 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:19,928 INFO L225 Difference]: With dead ends: 62 [2022-02-20 23:39:19,928 INFO L226 Difference]: Without dead ends: 62 [2022-02-20 23:39:19,928 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 8 GetRequests, 1 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:39:19,929 INFO L933 BasicCegarLoop]: 21 mSDtfsCounter, 93 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 51 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 93 SdHoareTripleChecker+Valid, 65 SdHoareTripleChecker+Invalid, 57 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 51 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:19,929 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [93 Valid, 65 Invalid, 57 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 51 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:19,929 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states. [2022-02-20 23:39:19,930 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 57. [2022-02-20 23:39:19,930 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:19,930 INFO L82 GeneralOperation]: Start isEquivalent. First operand 62 states. Second operand has 57 states, 52 states have (on average 1.2884615384615385) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:19,930 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand has 57 states, 52 states have (on average 1.2884615384615385) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:19,930 INFO L87 Difference]: Start difference. First operand 62 states. Second operand has 57 states, 52 states have (on average 1.2884615384615385) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:19,931 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,931 INFO L93 Difference]: Finished difference Result 62 states and 72 transitions. [2022-02-20 23:39:19,931 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 72 transitions. [2022-02-20 23:39:19,931 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:19,931 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:19,932 INFO L74 IsIncluded]: Start isIncluded. First operand has 57 states, 52 states have (on average 1.2884615384615385) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 62 states. [2022-02-20 23:39:19,932 INFO L87 Difference]: Start difference. First operand has 57 states, 52 states have (on average 1.2884615384615385) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 62 states. [2022-02-20 23:39:19,932 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:19,932 INFO L93 Difference]: Finished difference Result 62 states and 72 transitions. [2022-02-20 23:39:19,932 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 72 transitions. [2022-02-20 23:39:19,933 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:19,933 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:19,933 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:19,933 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:19,933 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 52 states have (on average 1.2884615384615385) internal successors, (67), 56 states have internal predecessors, (67), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:19,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 67 transitions. [2022-02-20 23:39:19,934 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 67 transitions. Word has length 16 [2022-02-20 23:39:19,934 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:19,934 INFO L470 AbstractCegarLoop]: Abstraction has 57 states and 67 transitions. [2022-02-20 23:39:19,934 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 6 states have (on average 2.6666666666666665) internal successors, (16), 7 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:19,934 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 67 transitions. [2022-02-20 23:39:19,935 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-02-20 23:39:19,935 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:19,935 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:19,935 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2022-02-20 23:39:19,935 INFO L402 AbstractCegarLoop]: === Iteration 16 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:19,935 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:19,935 INFO L85 PathProgramCache]: Analyzing trace with hash 43271131, now seen corresponding path program 1 times [2022-02-20 23:39:19,936 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:19,936 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [947067796] [2022-02-20 23:39:19,936 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:19,936 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:19,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:19,957 INFO L290 TraceCheckUtils]: 0: Hoare triple {4800#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {4800#true} is VALID [2022-02-20 23:39:19,957 INFO L290 TraceCheckUtils]: 1: Hoare triple {4800#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {4800#true} is VALID [2022-02-20 23:39:19,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {4800#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {4800#true} is VALID [2022-02-20 23:39:19,958 INFO L290 TraceCheckUtils]: 3: Hoare triple {4800#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {4800#true} is VALID [2022-02-20 23:39:19,958 INFO L290 TraceCheckUtils]: 4: Hoare triple {4800#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {4800#true} is VALID [2022-02-20 23:39:19,958 INFO L290 TraceCheckUtils]: 5: Hoare triple {4800#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {4800#true} is VALID [2022-02-20 23:39:19,958 INFO L290 TraceCheckUtils]: 6: Hoare triple {4800#true} main_~i~1#1 := 0; {4800#true} is VALID [2022-02-20 23:39:19,958 INFO L290 TraceCheckUtils]: 7: Hoare triple {4800#true} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {4800#true} is VALID [2022-02-20 23:39:19,958 INFO L290 TraceCheckUtils]: 8: Hoare triple {4800#true} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {4800#true} is VALID [2022-02-20 23:39:19,958 INFO L290 TraceCheckUtils]: 9: Hoare triple {4800#true} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {4800#true} is VALID [2022-02-20 23:39:19,959 INFO L290 TraceCheckUtils]: 10: Hoare triple {4800#true} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {4800#true} is VALID [2022-02-20 23:39:19,959 INFO L290 TraceCheckUtils]: 11: Hoare triple {4800#true} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {4800#true} is VALID [2022-02-20 23:39:19,959 INFO L290 TraceCheckUtils]: 12: Hoare triple {4800#true} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {4800#true} is VALID [2022-02-20 23:39:19,959 INFO L290 TraceCheckUtils]: 13: Hoare triple {4800#true} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {4800#true} is VALID [2022-02-20 23:39:19,959 INFO L290 TraceCheckUtils]: 14: Hoare triple {4800#true} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {4800#true} is VALID [2022-02-20 23:39:19,959 INFO L290 TraceCheckUtils]: 15: Hoare triple {4800#true} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {4800#true} is VALID [2022-02-20 23:39:19,959 INFO L290 TraceCheckUtils]: 16: Hoare triple {4800#true} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {4800#true} is VALID [2022-02-20 23:39:19,960 INFO L290 TraceCheckUtils]: 17: Hoare triple {4800#true} assume !cstrcspn_#t~short7#1; {4802#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:19,960 INFO L290 TraceCheckUtils]: 18: Hoare triple {4802#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {4801#false} is VALID [2022-02-20 23:39:19,960 INFO L290 TraceCheckUtils]: 19: Hoare triple {4801#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {4801#false} is VALID [2022-02-20 23:39:19,960 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:19,960 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:19,960 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [947067796] [2022-02-20 23:39:19,961 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [947067796] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:19,961 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:19,961 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 23:39:19,961 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1550287334] [2022-02-20 23:39:19,961 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:19,961 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:19,961 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:19,962 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:19,971 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:19,971 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-02-20 23:39:19,971 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:19,972 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-02-20 23:39:19,972 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-02-20 23:39:19,972 INFO L87 Difference]: Start difference. First operand 57 states and 67 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:20,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,000 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-02-20 23:39:20,000 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-02-20 23:39:20,000 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:20,000 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:20,000 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:20,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-02-20 23:39:20,001 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:20,001 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 43 transitions. [2022-02-20 23:39:20,001 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 43 transitions. [2022-02-20 23:39:20,025 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:20,026 INFO L225 Difference]: With dead ends: 59 [2022-02-20 23:39:20,026 INFO L226 Difference]: Without dead ends: 59 [2022-02-20 23:39:20,026 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:20,026 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 74 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:20,027 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 74 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:20,027 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2022-02-20 23:39:20,028 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 59. [2022-02-20 23:39:20,028 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:20,028 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand has 59 states, 54 states have (on average 1.2777777777777777) internal successors, (69), 58 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:20,028 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand has 59 states, 54 states have (on average 1.2777777777777777) internal successors, (69), 58 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:20,028 INFO L87 Difference]: Start difference. First operand 59 states. Second operand has 59 states, 54 states have (on average 1.2777777777777777) internal successors, (69), 58 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:20,029 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,029 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-02-20 23:39:20,029 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-02-20 23:39:20,029 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:20,029 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:20,029 INFO L74 IsIncluded]: Start isIncluded. First operand has 59 states, 54 states have (on average 1.2777777777777777) internal successors, (69), 58 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 59 states. [2022-02-20 23:39:20,029 INFO L87 Difference]: Start difference. First operand has 59 states, 54 states have (on average 1.2777777777777777) internal successors, (69), 58 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 59 states. [2022-02-20 23:39:20,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,030 INFO L93 Difference]: Finished difference Result 59 states and 69 transitions. [2022-02-20 23:39:20,030 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-02-20 23:39:20,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:20,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:20,031 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:20,031 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:20,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 59 states, 54 states have (on average 1.2777777777777777) internal successors, (69), 58 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:20,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 59 states to 59 states and 69 transitions. [2022-02-20 23:39:20,031 INFO L78 Accepts]: Start accepts. Automaton has 59 states and 69 transitions. Word has length 20 [2022-02-20 23:39:20,031 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:20,032 INFO L470 AbstractCegarLoop]: Abstraction has 59 states and 69 transitions. [2022-02-20 23:39:20,032 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:20,032 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 69 transitions. [2022-02-20 23:39:20,032 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:39:20,032 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:20,032 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:20,032 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2022-02-20 23:39:20,032 INFO L402 AbstractCegarLoop]: === Iteration 17 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:20,033 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:20,033 INFO L85 PathProgramCache]: Analyzing trace with hash -1371974184, now seen corresponding path program 1 times [2022-02-20 23:39:20,033 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:20,033 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [681470257] [2022-02-20 23:39:20,033 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:20,033 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:20,048 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:20,128 INFO L290 TraceCheckUtils]: 0: Hoare triple {5041#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5041#true} is VALID [2022-02-20 23:39:20,128 INFO L290 TraceCheckUtils]: 1: Hoare triple {5041#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {5041#true} is VALID [2022-02-20 23:39:20,129 INFO L290 TraceCheckUtils]: 2: Hoare triple {5041#true} assume main_~length1~0#1 < 1;main_~length1~0#1 := 1; {5043#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:20,129 INFO L290 TraceCheckUtils]: 3: Hoare triple {5043#(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; {5043#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:20,130 INFO L290 TraceCheckUtils]: 4: Hoare triple {5043#(and (<= |ULTIMATE.start_main_~length1~0#1| 1) (<= 1 |ULTIMATE.start_main_~length1~0#1|))} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {5044#(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|) 0))} is VALID [2022-02-20 23:39:20,130 INFO L290 TraceCheckUtils]: 5: Hoare triple {5044#(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|) 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5044#(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|) 0))} is VALID [2022-02-20 23:39:20,131 INFO L290 TraceCheckUtils]: 6: Hoare triple {5044#(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|) 0))} main_~i~1#1 := 0; {5044#(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|) 0))} is VALID [2022-02-20 23:39:20,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {5044#(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|) 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {5044#(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|) 0))} is VALID [2022-02-20 23:39:20,132 INFO L290 TraceCheckUtils]: 8: Hoare triple {5044#(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|) 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {5045#(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:20,132 INFO L290 TraceCheckUtils]: 9: Hoare triple {5045#(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: L552 {5045#(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:20,133 INFO L290 TraceCheckUtils]: 10: Hoare triple {5045#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {5046#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} is VALID [2022-02-20 23:39:20,138 INFO L290 TraceCheckUtils]: 11: Hoare triple {5046#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {5047#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} is VALID [2022-02-20 23:39:20,138 INFO L290 TraceCheckUtils]: 12: Hoare triple {5047#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {5042#false} is VALID [2022-02-20 23:39:20,139 INFO L290 TraceCheckUtils]: 13: Hoare triple {5042#false} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {5042#false} is VALID [2022-02-20 23:39:20,140 INFO L290 TraceCheckUtils]: 14: Hoare triple {5042#false} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {5042#false} is VALID [2022-02-20 23:39:20,143 INFO L290 TraceCheckUtils]: 15: Hoare triple {5042#false} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {5042#false} is VALID [2022-02-20 23:39:20,144 INFO L290 TraceCheckUtils]: 16: Hoare triple {5042#false} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {5042#false} is VALID [2022-02-20 23:39:20,144 INFO L290 TraceCheckUtils]: 17: Hoare triple {5042#false} assume cstrcspn_#t~short7#1; {5042#false} is VALID [2022-02-20 23:39:20,144 INFO L290 TraceCheckUtils]: 18: Hoare triple {5042#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {5042#false} is VALID [2022-02-20 23:39:20,144 INFO L290 TraceCheckUtils]: 19: Hoare triple {5042#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {5042#false} is VALID [2022-02-20 23:39:20,144 INFO L290 TraceCheckUtils]: 20: Hoare triple {5042#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {5042#false} is VALID [2022-02-20 23:39:20,144 INFO L290 TraceCheckUtils]: 21: Hoare triple {5042#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {5042#false} is VALID [2022-02-20 23:39:20,145 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:20,145 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:20,145 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [681470257] [2022-02-20 23:39:20,145 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [681470257] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:20,145 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:20,145 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-02-20 23:39:20,145 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2117155882] [2022-02-20 23:39:20,145 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:20,146 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:39:20,146 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:20,146 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,163 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:20,163 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-02-20 23:39:20,163 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:20,164 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-02-20 23:39:20,164 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-02-20 23:39:20,164 INFO L87 Difference]: Start difference. First operand 59 states and 69 transitions. Second operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,319 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,319 INFO L93 Difference]: Finished difference Result 71 states and 81 transitions. [2022-02-20 23:39:20,319 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-02-20 23:39:20,319 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:39:20,319 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:20,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 56 transitions. [2022-02-20 23:39:20,320 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,320 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 56 transitions. [2022-02-20 23:39:20,320 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 56 transitions. [2022-02-20 23:39:20,352 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:20,353 INFO L225 Difference]: With dead ends: 71 [2022-02-20 23:39:20,353 INFO L226 Difference]: Without dead ends: 54 [2022-02-20 23:39:20,353 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-02-20 23:39:20,354 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 22 mSDsluCounter, 123 mSDsCounter, 0 mSdLazyCounter, 50 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 50 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:20,354 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 157 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 50 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 23:39:20,354 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 54 states. [2022-02-20 23:39:20,355 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 54 to 54. [2022-02-20 23:39:20,355 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:20,355 INFO L82 GeneralOperation]: Start isEquivalent. First operand 54 states. Second operand has 54 states, 49 states have (on average 1.2653061224489797) internal successors, (62), 53 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:20,355 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand has 54 states, 49 states have (on average 1.2653061224489797) internal successors, (62), 53 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:20,355 INFO L87 Difference]: Start difference. First operand 54 states. Second operand has 54 states, 49 states have (on average 1.2653061224489797) internal successors, (62), 53 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:20,356 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,356 INFO L93 Difference]: Finished difference Result 54 states and 62 transitions. [2022-02-20 23:39:20,356 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 62 transitions. [2022-02-20 23:39:20,356 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:20,356 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:20,357 INFO L74 IsIncluded]: Start isIncluded. First operand has 54 states, 49 states have (on average 1.2653061224489797) internal successors, (62), 53 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 54 states. [2022-02-20 23:39:20,357 INFO L87 Difference]: Start difference. First operand has 54 states, 49 states have (on average 1.2653061224489797) internal successors, (62), 53 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 54 states. [2022-02-20 23:39:20,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,357 INFO L93 Difference]: Finished difference Result 54 states and 62 transitions. [2022-02-20 23:39:20,357 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 62 transitions. [2022-02-20 23:39:20,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:20,358 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:20,358 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:20,358 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:20,358 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 54 states, 49 states have (on average 1.2653061224489797) internal successors, (62), 53 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:20,358 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 62 transitions. [2022-02-20 23:39:20,358 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 62 transitions. Word has length 22 [2022-02-20 23:39:20,359 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:20,359 INFO L470 AbstractCegarLoop]: Abstraction has 54 states and 62 transitions. [2022-02-20 23:39:20,359 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 3.142857142857143) internal successors, (22), 7 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,359 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 62 transitions. [2022-02-20 23:39:20,359 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-02-20 23:39:20,359 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:20,359 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:20,359 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2022-02-20 23:39:20,360 INFO L402 AbstractCegarLoop]: === Iteration 18 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:20,360 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:20,360 INFO L85 PathProgramCache]: Analyzing trace with hash 2105344662, now seen corresponding path program 1 times [2022-02-20 23:39:20,360 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:20,360 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [894822657] [2022-02-20 23:39:20,360 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:20,360 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:20,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:20,483 INFO L290 TraceCheckUtils]: 0: Hoare triple {5289#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5289#true} is VALID [2022-02-20 23:39:20,483 INFO L290 TraceCheckUtils]: 1: Hoare triple {5289#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {5289#true} is VALID [2022-02-20 23:39:20,484 INFO L290 TraceCheckUtils]: 2: Hoare triple {5289#true} assume !(main_~length1~0#1 < 1); {5291#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:20,484 INFO L290 TraceCheckUtils]: 3: Hoare triple {5291#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {5291#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:20,485 INFO L290 TraceCheckUtils]: 4: Hoare triple {5291#(<= 1 |ULTIMATE.start_main_~length1~0#1|)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {5292#(and (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0)))} is VALID [2022-02-20 23:39:20,486 INFO L290 TraceCheckUtils]: 5: Hoare triple {5292#(and (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~i~0#1| 0) (not (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 0)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5293#(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|) 0))} is VALID [2022-02-20 23:39:20,486 INFO L290 TraceCheckUtils]: 6: Hoare triple {5293#(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|) 0))} main_~i~1#1 := 0; {5293#(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|) 0))} is VALID [2022-02-20 23:39:20,486 INFO L290 TraceCheckUtils]: 7: Hoare triple {5293#(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|) 0))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {5293#(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|) 0))} is VALID [2022-02-20 23:39:20,487 INFO L290 TraceCheckUtils]: 8: Hoare triple {5293#(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|) 0))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {5294#(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:20,488 INFO L290 TraceCheckUtils]: 9: Hoare triple {5294#(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: L552 {5294#(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:20,488 INFO L290 TraceCheckUtils]: 10: Hoare triple {5294#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {5295#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 11: Hoare triple {5295#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {5296#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 12: Hoare triple {5296#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 13: Hoare triple {5290#false} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 14: Hoare triple {5290#false} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 15: Hoare triple {5290#false} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 16: Hoare triple {5290#false} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 17: Hoare triple {5290#false} assume cstrcspn_#t~short7#1; {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 18: Hoare triple {5290#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 19: Hoare triple {5290#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 20: Hoare triple {5290#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {5290#false} is VALID [2022-02-20 23:39:20,489 INFO L290 TraceCheckUtils]: 21: Hoare triple {5290#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {5290#false} is VALID [2022-02-20 23:39:20,490 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:20,490 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:20,490 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [894822657] [2022-02-20 23:39:20,490 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [894822657] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:20,490 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:20,490 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-02-20 23:39:20,490 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [727689666] [2022-02-20 23:39:20,490 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:20,490 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.75) internal successors, (22), 8 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:39:20,490 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:20,490 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 2.75) internal successors, (22), 8 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,505 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:20,506 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 23:39:20,506 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:20,506 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 23:39:20,506 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2022-02-20 23:39:20,506 INFO L87 Difference]: Start difference. First operand 54 states and 62 transitions. Second operand has 8 states, 8 states have (on average 2.75) internal successors, (22), 8 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,737 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,737 INFO L93 Difference]: Finished difference Result 74 states and 84 transitions. [2022-02-20 23:39:20,737 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:39:20,737 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 2.75) internal successors, (22), 8 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 22 [2022-02-20 23:39:20,737 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:20,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.75) internal successors, (22), 8 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 56 transitions. [2022-02-20 23:39:20,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 2.75) internal successors, (22), 8 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,738 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 56 transitions. [2022-02-20 23:39:20,738 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 56 transitions. [2022-02-20 23:39:20,773 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:20,774 INFO L225 Difference]: With dead ends: 74 [2022-02-20 23:39:20,774 INFO L226 Difference]: Without dead ends: 62 [2022-02-20 23:39:20,774 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 12 GetRequests, 3 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 6 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:39:20,774 INFO L933 BasicCegarLoop]: 30 mSDtfsCounter, 65 mSDsluCounter, 134 mSDsCounter, 0 mSdLazyCounter, 73 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 76 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 73 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:20,774 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [65 Valid, 164 Invalid, 76 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 73 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:20,775 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 62 states. [2022-02-20 23:39:20,775 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 62 to 56. [2022-02-20 23:39:20,776 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:20,776 INFO L82 GeneralOperation]: Start isEquivalent. First operand 62 states. Second operand has 56 states, 51 states have (on average 1.2549019607843137) internal successors, (64), 55 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:20,776 INFO L74 IsIncluded]: Start isIncluded. First operand 62 states. Second operand has 56 states, 51 states have (on average 1.2549019607843137) internal successors, (64), 55 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:20,776 INFO L87 Difference]: Start difference. First operand 62 states. Second operand has 56 states, 51 states have (on average 1.2549019607843137) internal successors, (64), 55 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:20,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,777 INFO L93 Difference]: Finished difference Result 62 states and 70 transitions. [2022-02-20 23:39:20,777 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 70 transitions. [2022-02-20 23:39:20,777 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:20,777 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:20,778 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 51 states have (on average 1.2549019607843137) internal successors, (64), 55 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 62 states. [2022-02-20 23:39:20,778 INFO L87 Difference]: Start difference. First operand has 56 states, 51 states have (on average 1.2549019607843137) internal successors, (64), 55 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 62 states. [2022-02-20 23:39:20,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:20,778 INFO L93 Difference]: Finished difference Result 62 states and 70 transitions. [2022-02-20 23:39:20,778 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 70 transitions. [2022-02-20 23:39:20,779 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:20,779 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:20,779 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:20,779 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:20,779 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 51 states have (on average 1.2549019607843137) internal successors, (64), 55 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:20,779 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 64 transitions. [2022-02-20 23:39:20,780 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 64 transitions. Word has length 22 [2022-02-20 23:39:20,780 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:20,780 INFO L470 AbstractCegarLoop]: Abstraction has 56 states and 64 transitions. [2022-02-20 23:39:20,780 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 2.75) internal successors, (22), 8 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,780 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 64 transitions. [2022-02-20 23:39:20,781 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:39:20,781 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:20,781 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:20,781 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable17 [2022-02-20 23:39:20,782 INFO L402 AbstractCegarLoop]: === Iteration 19 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:20,783 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:20,783 INFO L85 PathProgramCache]: Analyzing trace with hash 1877695219, now seen corresponding path program 1 times [2022-02-20 23:39:20,783 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:20,783 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [365912969] [2022-02-20 23:39:20,783 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:20,783 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:20,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:20,877 INFO L290 TraceCheckUtils]: 0: Hoare triple {5559#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5559#true} is VALID [2022-02-20 23:39:20,878 INFO L290 TraceCheckUtils]: 1: Hoare triple {5559#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {5559#true} is VALID [2022-02-20 23:39:20,878 INFO L290 TraceCheckUtils]: 2: Hoare triple {5559#true} assume !(main_~length1~0#1 < 1); {5559#true} is VALID [2022-02-20 23:39:20,878 INFO L290 TraceCheckUtils]: 3: Hoare triple {5559#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {5561#(and (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:20,879 INFO L290 TraceCheckUtils]: 4: Hoare triple {5561#(and (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {5562#(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:20,879 INFO L290 TraceCheckUtils]: 5: Hoare triple {5562#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {5562#(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:20,880 INFO L290 TraceCheckUtils]: 6: Hoare triple {5562#(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(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {5562#(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:20,880 INFO L290 TraceCheckUtils]: 7: Hoare triple {5562#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet15#1; {5562#(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:20,881 INFO L290 TraceCheckUtils]: 8: Hoare triple {5562#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {5562#(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:20,881 INFO L290 TraceCheckUtils]: 9: Hoare triple {5562#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5562#(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:20,881 INFO L290 TraceCheckUtils]: 10: Hoare triple {5562#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} main_~i~1#1 := 0; {5562#(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:20,882 INFO L290 TraceCheckUtils]: 11: Hoare triple {5562#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~length2~0#1| 1) (<= 1 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {5562#(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:20,882 INFO L290 TraceCheckUtils]: 12: Hoare triple {5562#(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: L547-4 {5562#(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:20,883 INFO L290 TraceCheckUtils]: 13: Hoare triple {5562#(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: L552 {5563#(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:20,883 INFO L290 TraceCheckUtils]: 14: Hoare triple {5563#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {5564#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_cstrcspn_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:20,884 INFO L290 TraceCheckUtils]: 15: Hoare triple {5564#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_cstrcspn_~s2#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {5564#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_cstrcspn_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:20,884 INFO L290 TraceCheckUtils]: 16: Hoare triple {5564#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_cstrcspn_~s2#1.offset|) 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {5565#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:20,884 INFO L290 TraceCheckUtils]: 17: Hoare triple {5565#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {5565#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:20,885 INFO L290 TraceCheckUtils]: 18: Hoare triple {5565#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {5565#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:20,885 INFO L290 TraceCheckUtils]: 19: Hoare triple {5565#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {5566#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:20,886 INFO L290 TraceCheckUtils]: 20: Hoare triple {5566#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {5567#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:20,886 INFO L290 TraceCheckUtils]: 21: Hoare triple {5567#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {5560#false} is VALID [2022-02-20 23:39:20,886 INFO L290 TraceCheckUtils]: 22: Hoare triple {5560#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {5560#false} is VALID [2022-02-20 23:39:20,886 INFO L290 TraceCheckUtils]: 23: Hoare triple {5560#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {5560#false} is VALID [2022-02-20 23:39:20,886 INFO L290 TraceCheckUtils]: 24: Hoare triple {5560#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {5560#false} is VALID [2022-02-20 23:39:20,886 INFO L290 TraceCheckUtils]: 25: Hoare triple {5560#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {5560#false} is VALID [2022-02-20 23:39:20,888 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:20,888 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:20,888 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [365912969] [2022-02-20 23:39:20,888 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [365912969] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:20,888 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:20,889 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-02-20 23:39:20,889 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [289936920] [2022-02-20 23:39:20,889 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:20,890 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 9 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 26 [2022-02-20 23:39:20,890 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:20,890 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 9 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:20,905 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:20,905 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 23:39:20,905 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:20,906 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 23:39:20,906 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-02-20 23:39:20,906 INFO L87 Difference]: Start difference. First operand 56 states and 64 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 9 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,175 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:21,175 INFO L93 Difference]: Finished difference Result 75 states and 83 transitions. [2022-02-20 23:39:21,175 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 23:39:21,176 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 9 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 26 [2022-02-20 23:39:21,176 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:21,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 9 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,176 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 68 transitions. [2022-02-20 23:39:21,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 9 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 68 transitions. [2022-02-20 23:39:21,177 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 68 transitions. [2022-02-20 23:39:21,220 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:21,220 INFO L225 Difference]: With dead ends: 75 [2022-02-20 23:39:21,221 INFO L226 Difference]: Without dead ends: 75 [2022-02-20 23:39:21,221 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=61, Invalid=121, Unknown=0, NotChecked=0, Total=182 [2022-02-20 23:39:21,221 INFO L933 BasicCegarLoop]: 28 mSDtfsCounter, 59 mSDsluCounter, 189 mSDsCounter, 0 mSdLazyCounter, 107 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 217 SdHoareTripleChecker+Invalid, 112 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 107 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:21,221 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [59 Valid, 217 Invalid, 112 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 107 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:21,222 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-02-20 23:39:21,222 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 73. [2022-02-20 23:39:21,222 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:21,222 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 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:21,223 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 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:21,223 INFO L87 Difference]: Start difference. First operand 75 states. Second operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 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:21,223 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:21,223 INFO L93 Difference]: Finished difference Result 75 states and 83 transitions. [2022-02-20 23:39:21,223 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 83 transitions. [2022-02-20 23:39:21,223 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:21,223 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:21,224 INFO L74 IsIncluded]: Start isIncluded. First operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 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 75 states. [2022-02-20 23:39:21,224 INFO L87 Difference]: Start difference. First operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 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 75 states. [2022-02-20 23:39:21,224 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:21,224 INFO L93 Difference]: Finished difference Result 75 states and 83 transitions. [2022-02-20 23:39:21,224 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 83 transitions. [2022-02-20 23:39:21,224 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:21,224 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:21,224 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:21,224 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:21,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 73 states, 68 states have (on average 1.2205882352941178) internal successors, (83), 72 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:21,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 73 states to 73 states and 83 transitions. [2022-02-20 23:39:21,225 INFO L78 Accepts]: Start accepts. Automaton has 73 states and 83 transitions. Word has length 26 [2022-02-20 23:39:21,225 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:21,225 INFO L470 AbstractCegarLoop]: Abstraction has 73 states and 83 transitions. [2022-02-20 23:39:21,225 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 9 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,225 INFO L276 IsEmpty]: Start isEmpty. Operand 73 states and 83 transitions. [2022-02-20 23:39:21,226 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 23:39:21,226 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:21,226 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:21,226 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18 [2022-02-20 23:39:21,226 INFO L402 AbstractCegarLoop]: === Iteration 20 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:21,226 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:21,226 INFO L85 PathProgramCache]: Analyzing trace with hash 72256885, now seen corresponding path program 1 times [2022-02-20 23:39:21,226 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:21,226 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [403937923] [2022-02-20 23:39:21,226 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:21,226 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:21,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:21,347 INFO L290 TraceCheckUtils]: 0: Hoare triple {5878#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {5878#true} is VALID [2022-02-20 23:39:21,347 INFO L290 TraceCheckUtils]: 1: Hoare triple {5878#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {5878#true} is VALID [2022-02-20 23:39:21,347 INFO L290 TraceCheckUtils]: 2: Hoare triple {5878#true} assume !(main_~length1~0#1 < 1); {5878#true} is VALID [2022-02-20 23:39:21,348 INFO L290 TraceCheckUtils]: 3: Hoare triple {5878#true} assume !(main_~length2~0#1 < 1); {5880#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:21,349 INFO L290 TraceCheckUtils]: 4: Hoare triple {5880#(<= 1 |ULTIMATE.start_main_~length2~0#1|)} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:21,349 INFO L290 TraceCheckUtils]: 5: Hoare triple {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 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~nondet15#1 && main_#t~nondet15#1 <= 127; {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:21,349 INFO L290 TraceCheckUtils]: 6: Hoare triple {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:21,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} havoc main_#t~nondet15#1; {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:21,351 INFO L290 TraceCheckUtils]: 8: Hoare triple {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:21,351 INFO L290 TraceCheckUtils]: 9: Hoare triple {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:21,351 INFO L290 TraceCheckUtils]: 10: Hoare triple {5881#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} main_~i~1#1 := 0; {5882#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:21,352 INFO L290 TraceCheckUtils]: 11: Hoare triple {5882#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0) (< 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {5883#(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:21,352 INFO L290 TraceCheckUtils]: 12: Hoare triple {5883#(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: L547-4 {5883#(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:21,353 INFO L290 TraceCheckUtils]: 13: Hoare triple {5883#(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: L552 {5884#(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:21,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {5884#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {5885#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_cstrcspn_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:21,354 INFO L290 TraceCheckUtils]: 15: Hoare triple {5885#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_cstrcspn_~s2#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {5885#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_cstrcspn_~s2#1.offset|) 0)} is VALID [2022-02-20 23:39:21,354 INFO L290 TraceCheckUtils]: 16: Hoare triple {5885#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_cstrcspn_~s2#1.offset|) 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {5886#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:21,354 INFO L290 TraceCheckUtils]: 17: Hoare triple {5886#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {5886#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:21,355 INFO L290 TraceCheckUtils]: 18: Hoare triple {5886#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {5886#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:21,355 INFO L290 TraceCheckUtils]: 19: Hoare triple {5886#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {5887#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:21,356 INFO L290 TraceCheckUtils]: 20: Hoare triple {5887#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {5888#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:21,356 INFO L290 TraceCheckUtils]: 21: Hoare triple {5888#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {5879#false} is VALID [2022-02-20 23:39:21,356 INFO L290 TraceCheckUtils]: 22: Hoare triple {5879#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {5879#false} is VALID [2022-02-20 23:39:21,356 INFO L290 TraceCheckUtils]: 23: Hoare triple {5879#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {5879#false} is VALID [2022-02-20 23:39:21,356 INFO L290 TraceCheckUtils]: 24: Hoare triple {5879#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {5879#false} is VALID [2022-02-20 23:39:21,356 INFO L290 TraceCheckUtils]: 25: Hoare triple {5879#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {5879#false} is VALID [2022-02-20 23:39:21,357 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:21,357 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:21,357 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [403937923] [2022-02-20 23:39:21,357 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [403937923] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 23:39:21,357 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 23:39:21,357 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-02-20 23:39:21,357 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [52277110] [2022-02-20 23:39:21,357 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 23:39:21,358 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.3636363636363638) internal successors, (26), 11 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 26 [2022-02-20 23:39:21,358 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:21,358 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.3636363636363638) internal successors, (26), 11 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,385 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:21,386 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-02-20 23:39:21,386 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:21,386 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-02-20 23:39:21,386 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=86, Unknown=0, NotChecked=0, Total=110 [2022-02-20 23:39:21,386 INFO L87 Difference]: Start difference. First operand 73 states and 83 transitions. Second operand has 11 states, 11 states have (on average 2.3636363636363638) internal successors, (26), 11 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,831 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:21,831 INFO L93 Difference]: Finished difference Result 96 states and 107 transitions. [2022-02-20 23:39:21,832 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:39:21,832 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.3636363636363638) internal successors, (26), 11 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 26 [2022-02-20 23:39:21,832 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:21,832 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.3636363636363638) internal successors, (26), 11 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 65 transitions. [2022-02-20 23:39:21,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.3636363636363638) internal successors, (26), 11 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,833 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 65 transitions. [2022-02-20 23:39:21,833 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 65 transitions. [2022-02-20 23:39:21,879 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:21,880 INFO L225 Difference]: With dead ends: 96 [2022-02-20 23:39:21,880 INFO L226 Difference]: Without dead ends: 96 [2022-02-20 23:39:21,880 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=96, Invalid=210, Unknown=0, NotChecked=0, Total=306 [2022-02-20 23:39:21,880 INFO L933 BasicCegarLoop]: 25 mSDtfsCounter, 152 mSDsluCounter, 170 mSDsCounter, 0 mSdLazyCounter, 126 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 152 SdHoareTripleChecker+Valid, 195 SdHoareTripleChecker+Invalid, 138 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 126 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:21,880 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [152 Valid, 195 Invalid, 138 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 126 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 23:39:21,881 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-02-20 23:39:21,882 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 74. [2022-02-20 23:39:21,882 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:21,882 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 74 states, 69 states have (on average 1.2318840579710144) internal successors, (85), 73 states have internal predecessors, (85), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,882 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 74 states, 69 states have (on average 1.2318840579710144) internal successors, (85), 73 states have internal predecessors, (85), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,882 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 74 states, 69 states have (on average 1.2318840579710144) internal successors, (85), 73 states have internal predecessors, (85), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,883 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:21,883 INFO L93 Difference]: Finished difference Result 96 states and 107 transitions. [2022-02-20 23:39:21,883 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 107 transitions. [2022-02-20 23:39:21,883 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:21,883 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:21,883 INFO L74 IsIncluded]: Start isIncluded. First operand has 74 states, 69 states have (on average 1.2318840579710144) internal successors, (85), 73 states have internal predecessors, (85), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 96 states. [2022-02-20 23:39:21,884 INFO L87 Difference]: Start difference. First operand has 74 states, 69 states have (on average 1.2318840579710144) internal successors, (85), 73 states have internal predecessors, (85), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 96 states. [2022-02-20 23:39:21,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:21,884 INFO L93 Difference]: Finished difference Result 96 states and 107 transitions. [2022-02-20 23:39:21,885 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 107 transitions. [2022-02-20 23:39:21,885 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:21,885 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:21,885 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:21,885 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:21,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 74 states, 69 states have (on average 1.2318840579710144) internal successors, (85), 73 states have internal predecessors, (85), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,886 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 74 states to 74 states and 85 transitions. [2022-02-20 23:39:21,886 INFO L78 Accepts]: Start accepts. Automaton has 74 states and 85 transitions. Word has length 26 [2022-02-20 23:39:21,886 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:21,886 INFO L470 AbstractCegarLoop]: Abstraction has 74 states and 85 transitions. [2022-02-20 23:39:21,886 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.3636363636363638) internal successors, (26), 11 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:21,886 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 85 transitions. [2022-02-20 23:39:21,887 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 23:39:21,887 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:21,887 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:21,887 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19 [2022-02-20 23:39:21,887 INFO L402 AbstractCegarLoop]: === Iteration 21 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:21,887 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:21,887 INFO L85 PathProgramCache]: Analyzing trace with hash -1740534735, now seen corresponding path program 1 times [2022-02-20 23:39:21,887 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:21,888 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1383397476] [2022-02-20 23:39:21,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:21,888 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:21,903 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:21,959 INFO L290 TraceCheckUtils]: 0: Hoare triple {6267#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6267#true} is VALID [2022-02-20 23:39:21,959 INFO L290 TraceCheckUtils]: 1: Hoare triple {6267#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {6267#true} is VALID [2022-02-20 23:39:21,959 INFO L290 TraceCheckUtils]: 2: Hoare triple {6267#true} assume !(main_~length1~0#1 < 1); {6267#true} is VALID [2022-02-20 23:39:21,959 INFO L290 TraceCheckUtils]: 3: Hoare triple {6267#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {6267#true} is VALID [2022-02-20 23:39:21,960 INFO L290 TraceCheckUtils]: 4: Hoare triple {6267#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {6269#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,960 INFO L290 TraceCheckUtils]: 5: Hoare triple {6269#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {6270#(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:21,961 INFO L290 TraceCheckUtils]: 6: Hoare triple {6270#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6270#(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:21,961 INFO L290 TraceCheckUtils]: 7: Hoare triple {6270#(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~nondet15#1; {6270#(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:21,962 INFO L290 TraceCheckUtils]: 8: Hoare triple {6270#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {6271#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:21,962 INFO L290 TraceCheckUtils]: 9: Hoare triple {6271#(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); {6271#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:21,962 INFO L290 TraceCheckUtils]: 10: Hoare triple {6271#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} main_~i~1#1 := 0; {6271#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:21,963 INFO L290 TraceCheckUtils]: 11: Hoare triple {6271#(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); {6271#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:21,963 INFO L290 TraceCheckUtils]: 12: Hoare triple {6271#(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: L547-4 {6272#(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:21,964 INFO L290 TraceCheckUtils]: 13: Hoare triple {6272#(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: L552 {6272#(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:21,964 INFO L290 TraceCheckUtils]: 14: Hoare triple {6272#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,965 INFO L290 TraceCheckUtils]: 15: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,965 INFO L290 TraceCheckUtils]: 16: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,966 INFO L290 TraceCheckUtils]: 17: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,966 INFO L290 TraceCheckUtils]: 18: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,967 INFO L290 TraceCheckUtils]: 19: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,967 INFO L290 TraceCheckUtils]: 20: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,968 INFO L290 TraceCheckUtils]: 21: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,968 INFO L290 TraceCheckUtils]: 22: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,968 INFO L290 TraceCheckUtils]: 23: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,969 INFO L290 TraceCheckUtils]: 24: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:21,969 INFO L290 TraceCheckUtils]: 25: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {6274#(and (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:21,970 INFO L290 TraceCheckUtils]: 26: Hoare triple {6274#(and (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {6268#false} is VALID [2022-02-20 23:39:21,970 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:21,970 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:21,970 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1383397476] [2022-02-20 23:39:21,970 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1383397476] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:21,970 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1917442058] [2022-02-20 23:39:21,970 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:21,970 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:21,971 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:21,976 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:21,977 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:22,031 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:22,032 INFO L263 TraceCheckSpWp]: Trace formula consists of 146 conjuncts, 29 conjunts are in the unsatisfiable core [2022-02-20 23:39:22,047 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:22,049 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:22,112 INFO L190 IndexEqualityManager]: detected not equals via solver [2022-02-20 23:39:22,113 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:22,119 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:22,361 INFO L290 TraceCheckUtils]: 0: Hoare triple {6267#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6267#true} is VALID [2022-02-20 23:39:22,361 INFO L290 TraceCheckUtils]: 1: Hoare triple {6267#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {6267#true} is VALID [2022-02-20 23:39:22,361 INFO L290 TraceCheckUtils]: 2: Hoare triple {6267#true} assume !(main_~length1~0#1 < 1); {6267#true} is VALID [2022-02-20 23:39:22,361 INFO L290 TraceCheckUtils]: 3: Hoare triple {6267#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {6267#true} is VALID [2022-02-20 23:39:22,362 INFO L290 TraceCheckUtils]: 4: Hoare triple {6267#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {6290#(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:22,363 INFO L290 TraceCheckUtils]: 5: Hoare triple {6290#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {6294#(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:22,364 INFO L290 TraceCheckUtils]: 6: Hoare triple {6294#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6294#(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:22,364 INFO L290 TraceCheckUtils]: 7: Hoare triple {6294#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet15#1; {6294#(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:22,364 INFO L290 TraceCheckUtils]: 8: Hoare triple {6294#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {6294#(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:22,365 INFO L290 TraceCheckUtils]: 9: Hoare triple {6294#(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); {6294#(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:22,365 INFO L290 TraceCheckUtils]: 10: Hoare triple {6294#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {6294#(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:22,366 INFO L290 TraceCheckUtils]: 11: Hoare triple {6294#(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); {6294#(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:22,366 INFO L290 TraceCheckUtils]: 12: Hoare triple {6294#(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: L547-4 {6294#(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:22,367 INFO L290 TraceCheckUtils]: 13: Hoare triple {6294#(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: L552 {6294#(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:22,367 INFO L290 TraceCheckUtils]: 14: Hoare triple {6294#(and (< 1 (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {6322#(and (< 1 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,368 INFO L290 TraceCheckUtils]: 15: Hoare triple {6322#(and (< 1 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,369 INFO L290 TraceCheckUtils]: 16: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,369 INFO L290 TraceCheckUtils]: 17: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,370 INFO L290 TraceCheckUtils]: 18: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,371 INFO L290 TraceCheckUtils]: 19: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,373 INFO L290 TraceCheckUtils]: 20: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,374 INFO L290 TraceCheckUtils]: 21: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,374 INFO L290 TraceCheckUtils]: 22: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,375 INFO L290 TraceCheckUtils]: 23: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,375 INFO L290 TraceCheckUtils]: 24: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:22,375 INFO L290 TraceCheckUtils]: 25: Hoare triple {6273#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {6356#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1))} is VALID [2022-02-20 23:39:22,376 INFO L290 TraceCheckUtils]: 26: Hoare triple {6356#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {6268#false} is VALID [2022-02-20 23:39:22,376 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:22,376 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:22,869 INFO L290 TraceCheckUtils]: 26: Hoare triple {6360#(and (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {6268#false} is VALID [2022-02-20 23:39:22,870 INFO L290 TraceCheckUtils]: 25: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {6360#(and (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,870 INFO L290 TraceCheckUtils]: 24: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,871 INFO L290 TraceCheckUtils]: 23: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,871 INFO L290 TraceCheckUtils]: 22: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,871 INFO L290 TraceCheckUtils]: 21: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !cstrcspn_#t~short7#1; {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,872 INFO L290 TraceCheckUtils]: 19: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,873 INFO L290 TraceCheckUtils]: 18: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,875 INFO L290 TraceCheckUtils]: 17: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,876 INFO L290 TraceCheckUtils]: 16: Hoare triple {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,876 INFO L290 TraceCheckUtils]: 15: Hoare triple {6395#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {6364#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:22,877 INFO L290 TraceCheckUtils]: 14: Hoare triple {6399#(or (< |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {6395#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|)))} is VALID [2022-02-20 23:39:22,877 INFO L290 TraceCheckUtils]: 13: Hoare triple {6399#(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: L552 {6399#(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:22,878 INFO L290 TraceCheckUtils]: 12: Hoare triple {6399#(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: L547-4 {6399#(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:22,878 INFO L290 TraceCheckUtils]: 11: Hoare triple {6399#(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); {6399#(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:22,878 INFO L290 TraceCheckUtils]: 10: Hoare triple {6399#(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; {6399#(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:22,879 INFO L290 TraceCheckUtils]: 9: Hoare triple {6399#(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); {6399#(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:22,879 INFO L290 TraceCheckUtils]: 8: Hoare triple {6399#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {6399#(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:22,879 INFO L290 TraceCheckUtils]: 7: Hoare triple {6399#(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~nondet15#1; {6399#(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:22,880 INFO L290 TraceCheckUtils]: 6: Hoare triple {6399#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6399#(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:22,880 INFO L290 TraceCheckUtils]: 5: Hoare triple {6427#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {6399#(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:22,881 INFO L290 TraceCheckUtils]: 4: Hoare triple {6267#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {6427#(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:22,881 INFO L290 TraceCheckUtils]: 3: Hoare triple {6267#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {6267#true} is VALID [2022-02-20 23:39:22,881 INFO L290 TraceCheckUtils]: 2: Hoare triple {6267#true} assume !(main_~length1~0#1 < 1); {6267#true} is VALID [2022-02-20 23:39:22,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {6267#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {6267#true} is VALID [2022-02-20 23:39:22,881 INFO L290 TraceCheckUtils]: 0: Hoare triple {6267#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6267#true} is VALID [2022-02-20 23:39:22,881 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:22,881 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1917442058] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:22,881 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:22,881 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 16 [2022-02-20 23:39:22,882 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [150249864] [2022-02-20 23:39:22,882 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:22,882 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 4.0) internal successors, (64), 17 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) Word has length 27 [2022-02-20 23:39:22,882 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:22,882 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 17 states, 16 states have (on average 4.0) internal successors, (64), 17 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:22,932 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:22,932 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-02-20 23:39:22,932 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:22,933 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-02-20 23:39:22,933 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=223, Unknown=0, NotChecked=0, Total=272 [2022-02-20 23:39:22,933 INFO L87 Difference]: Start difference. First operand 74 states and 85 transitions. Second operand has 17 states, 16 states have (on average 4.0) internal successors, (64), 17 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:23,572 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:23,572 INFO L93 Difference]: Finished difference Result 145 states and 163 transitions. [2022-02-20 23:39:23,572 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 23:39:23,573 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 16 states have (on average 4.0) internal successors, (64), 17 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) Word has length 27 [2022-02-20 23:39:23,573 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:23,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 4.0) internal successors, (64), 17 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:23,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2022-02-20 23:39:23,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 16 states have (on average 4.0) internal successors, (64), 17 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:23,574 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 82 transitions. [2022-02-20 23:39:23,574 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 82 transitions. [2022-02-20 23:39:23,635 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:23,636 INFO L225 Difference]: With dead ends: 145 [2022-02-20 23:39:23,636 INFO L226 Difference]: Without dead ends: 145 [2022-02-20 23:39:23,637 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 65 GetRequests, 43 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 71 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=112, Invalid=394, Unknown=0, NotChecked=0, Total=506 [2022-02-20 23:39:23,637 INFO L933 BasicCegarLoop]: 30 mSDtfsCounter, 346 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 181 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 346 SdHoareTripleChecker+Valid, 183 SdHoareTripleChecker+Invalid, 205 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 181 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:23,637 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [346 Valid, 183 Invalid, 205 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 181 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:39:23,637 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 145 states. [2022-02-20 23:39:23,638 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 145 to 102. [2022-02-20 23:39:23,639 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:23,639 INFO L82 GeneralOperation]: Start isEquivalent. First operand 145 states. Second operand has 102 states, 98 states have (on average 1.2142857142857142) internal successors, (119), 101 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:23,639 INFO L74 IsIncluded]: Start isIncluded. First operand 145 states. Second operand has 102 states, 98 states have (on average 1.2142857142857142) internal successors, (119), 101 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:23,639 INFO L87 Difference]: Start difference. First operand 145 states. Second operand has 102 states, 98 states have (on average 1.2142857142857142) internal successors, (119), 101 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:23,640 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:23,640 INFO L93 Difference]: Finished difference Result 145 states and 163 transitions. [2022-02-20 23:39:23,640 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 163 transitions. [2022-02-20 23:39:23,640 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:23,641 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:23,641 INFO L74 IsIncluded]: Start isIncluded. First operand has 102 states, 98 states have (on average 1.2142857142857142) internal successors, (119), 101 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 145 states. [2022-02-20 23:39:23,641 INFO L87 Difference]: Start difference. First operand has 102 states, 98 states have (on average 1.2142857142857142) internal successors, (119), 101 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 145 states. [2022-02-20 23:39:23,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:23,642 INFO L93 Difference]: Finished difference Result 145 states and 163 transitions. [2022-02-20 23:39:23,642 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 163 transitions. [2022-02-20 23:39:23,642 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:23,642 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:23,642 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:23,642 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:23,642 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 102 states, 98 states have (on average 1.2142857142857142) internal successors, (119), 101 states have internal predecessors, (119), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:23,643 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 119 transitions. [2022-02-20 23:39:23,643 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 119 transitions. Word has length 27 [2022-02-20 23:39:23,643 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:23,643 INFO L470 AbstractCegarLoop]: Abstraction has 102 states and 119 transitions. [2022-02-20 23:39:23,644 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 16 states have (on average 4.0) internal successors, (64), 17 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:23,644 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 119 transitions. [2022-02-20 23:39:23,644 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 23:39:23,644 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:23,644 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:23,663 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 23:39:23,860 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:23,861 INFO L402 AbstractCegarLoop]: === Iteration 22 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:23,861 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:23,861 INFO L85 PathProgramCache]: Analyzing trace with hash -145898734, now seen corresponding path program 1 times [2022-02-20 23:39:23,861 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:23,861 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [13583340] [2022-02-20 23:39:23,861 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:23,861 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:23,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:23,992 INFO L290 TraceCheckUtils]: 0: Hoare triple {6991#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6991#true} is VALID [2022-02-20 23:39:23,995 INFO L290 TraceCheckUtils]: 1: Hoare triple {6991#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {6991#true} is VALID [2022-02-20 23:39:23,995 INFO L290 TraceCheckUtils]: 2: Hoare triple {6991#true} assume !(main_~length1~0#1 < 1); {6991#true} is VALID [2022-02-20 23:39:23,995 INFO L290 TraceCheckUtils]: 3: Hoare triple {6991#true} assume !(main_~length2~0#1 < 1); {6991#true} is VALID [2022-02-20 23:39:23,996 INFO L290 TraceCheckUtils]: 4: Hoare triple {6991#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {6993#(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:23,996 INFO L290 TraceCheckUtils]: 5: Hoare triple {6993#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {6993#(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:23,997 INFO L290 TraceCheckUtils]: 6: Hoare triple {6993#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6993#(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:23,997 INFO L290 TraceCheckUtils]: 7: Hoare triple {6993#(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~nondet15#1; {6993#(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:23,997 INFO L290 TraceCheckUtils]: 8: Hoare triple {6993#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {6993#(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:23,998 INFO L290 TraceCheckUtils]: 9: Hoare triple {6993#(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); {6993#(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:23,998 INFO L290 TraceCheckUtils]: 10: Hoare triple {6993#(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; {6994#(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:23,999 INFO L290 TraceCheckUtils]: 11: Hoare triple {6994#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {6995#(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:23,999 INFO L290 TraceCheckUtils]: 12: Hoare triple {6995#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {6995#(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:24,000 INFO L290 TraceCheckUtils]: 13: Hoare triple {6995#(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~nondet17#1; {6995#(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:24,000 INFO L290 TraceCheckUtils]: 14: Hoare triple {6995#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {6996#(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:24,000 INFO L290 TraceCheckUtils]: 15: Hoare triple {6996#(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); {6996#(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:24,001 INFO L290 TraceCheckUtils]: 16: Hoare triple {6996#(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: L547-4 {6996#(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:24,001 INFO L290 TraceCheckUtils]: 17: Hoare triple {6996#(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: L552 {6997#(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:24,002 INFO L290 TraceCheckUtils]: 18: Hoare triple {6997#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {6998#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:24,002 INFO L290 TraceCheckUtils]: 19: Hoare triple {6998#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {6998#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:24,003 INFO L290 TraceCheckUtils]: 20: Hoare triple {6998#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:24,003 INFO L290 TraceCheckUtils]: 21: Hoare triple {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:24,004 INFO L290 TraceCheckUtils]: 22: Hoare triple {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:24,004 INFO L290 TraceCheckUtils]: 23: Hoare triple {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:24,004 INFO L290 TraceCheckUtils]: 24: Hoare triple {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:24,005 INFO L290 TraceCheckUtils]: 25: Hoare triple {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume cstrcspn_#t~short7#1; {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:24,005 INFO L290 TraceCheckUtils]: 26: Hoare triple {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:24,006 INFO L290 TraceCheckUtils]: 27: Hoare triple {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:24,006 INFO L290 TraceCheckUtils]: 28: Hoare triple {6999#(and (<= 2 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7000#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:24,007 INFO L290 TraceCheckUtils]: 29: Hoare triple {7000#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {6992#false} is VALID [2022-02-20 23:39:24,007 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:24,007 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:24,007 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [13583340] [2022-02-20 23:39:24,007 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [13583340] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:24,007 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1189841031] [2022-02-20 23:39:24,007 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:24,008 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:24,008 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:24,009 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:24,010 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:24,069 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:24,070 INFO L263 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 23:39:24,081 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:24,081 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 0: Hoare triple {6991#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 1: Hoare triple {6991#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 2: Hoare triple {6991#true} assume !(main_~length1~0#1 < 1); {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 3: Hoare triple {6991#true} assume !(main_~length2~0#1 < 1); {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 4: Hoare triple {6991#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 5: Hoare triple {6991#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 6: Hoare triple {6991#true} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 7: Hoare triple {6991#true} havoc main_#t~nondet15#1; {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 8: Hoare triple {6991#true} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {6991#true} is VALID [2022-02-20 23:39:24,294 INFO L290 TraceCheckUtils]: 9: Hoare triple {6991#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6991#true} is VALID [2022-02-20 23:39:24,295 INFO L290 TraceCheckUtils]: 10: Hoare triple {6991#true} main_~i~1#1 := 0; {7034#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:24,295 INFO L290 TraceCheckUtils]: 11: Hoare triple {7034#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,295 INFO L290 TraceCheckUtils]: 12: Hoare triple {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,296 INFO L290 TraceCheckUtils]: 13: Hoare triple {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet17#1; {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,296 INFO L290 TraceCheckUtils]: 14: Hoare triple {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,296 INFO L290 TraceCheckUtils]: 15: Hoare triple {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,296 INFO L290 TraceCheckUtils]: 16: Hoare triple {7038#(< 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: L547-4 {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,297 INFO L290 TraceCheckUtils]: 17: Hoare triple {7038#(< 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: L552 {7057#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} is VALID [2022-02-20 23:39:24,297 INFO L290 TraceCheckUtils]: 18: Hoare triple {7057#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {7061#(< (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|))} is VALID [2022-02-20 23:39:24,298 INFO L290 TraceCheckUtils]: 19: Hoare triple {7061#(< (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {7061#(< (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|))} is VALID [2022-02-20 23:39:24,298 INFO L290 TraceCheckUtils]: 20: Hoare triple {7061#(< (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {7068#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:24,298 INFO L290 TraceCheckUtils]: 21: Hoare triple {7068#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {7068#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:24,299 INFO L290 TraceCheckUtils]: 22: Hoare triple {7068#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {7068#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:24,299 INFO L290 TraceCheckUtils]: 23: Hoare triple {7068#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:24,301 INFO L290 TraceCheckUtils]: 24: Hoare triple {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:24,301 INFO L290 TraceCheckUtils]: 25: Hoare triple {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:24,302 INFO L290 TraceCheckUtils]: 26: Hoare triple {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:24,302 INFO L290 TraceCheckUtils]: 27: Hoare triple {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:24,303 INFO L290 TraceCheckUtils]: 28: Hoare triple {7078#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7000#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:24,303 INFO L290 TraceCheckUtils]: 29: Hoare triple {7000#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {6992#false} is VALID [2022-02-20 23:39:24,303 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:24,303 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:24,549 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:24,603 INFO L290 TraceCheckUtils]: 29: Hoare triple {7097#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {6992#false} is VALID [2022-02-20 23:39:24,604 INFO L290 TraceCheckUtils]: 28: Hoare triple {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7097#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:24,604 INFO L290 TraceCheckUtils]: 27: Hoare triple {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:24,605 INFO L290 TraceCheckUtils]: 26: Hoare triple {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:24,605 INFO L290 TraceCheckUtils]: 25: Hoare triple {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} assume cstrcspn_#t~short7#1; {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:24,606 INFO L290 TraceCheckUtils]: 24: Hoare triple {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:24,606 INFO L290 TraceCheckUtils]: 23: Hoare triple {7117#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {7101#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:24,606 INFO L290 TraceCheckUtils]: 22: Hoare triple {7117#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {7117#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:39:24,607 INFO L290 TraceCheckUtils]: 21: Hoare triple {7117#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {7117#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:39:24,607 INFO L290 TraceCheckUtils]: 20: Hoare triple {7127#(or (< |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= (+ 2 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {7117#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:39:24,608 INFO L290 TraceCheckUtils]: 19: Hoare triple {7127#(or (< |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= (+ 2 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {7127#(or (< |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= (+ 2 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:24,608 INFO L290 TraceCheckUtils]: 18: Hoare triple {7134#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {7127#(or (< |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= (+ 2 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:24,609 INFO L290 TraceCheckUtils]: 17: Hoare triple {7038#(< 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: L552 {7134#(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:24,609 INFO L290 TraceCheckUtils]: 16: Hoare triple {7038#(< 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: L547-4 {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,609 INFO L290 TraceCheckUtils]: 15: Hoare triple {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,609 INFO L290 TraceCheckUtils]: 14: Hoare triple {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,610 INFO L290 TraceCheckUtils]: 13: Hoare triple {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet17#1; {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,610 INFO L290 TraceCheckUtils]: 12: Hoare triple {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,610 INFO L290 TraceCheckUtils]: 11: Hoare triple {7034#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {7038#(< 1 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 10: Hoare triple {6991#true} main_~i~1#1 := 0; {7034#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 9: Hoare triple {6991#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 8: Hoare triple {6991#true} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 7: Hoare triple {6991#true} havoc main_#t~nondet15#1; {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 6: Hoare triple {6991#true} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 5: Hoare triple {6991#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 4: Hoare triple {6991#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 3: Hoare triple {6991#true} assume !(main_~length2~0#1 < 1); {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 2: Hoare triple {6991#true} assume !(main_~length1~0#1 < 1); {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 1: Hoare triple {6991#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L290 TraceCheckUtils]: 0: Hoare triple {6991#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {6991#true} is VALID [2022-02-20 23:39:24,611 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:24,611 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1189841031] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:24,611 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:24,611 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 20 [2022-02-20 23:39:24,612 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1907676153] [2022-02-20 23:39:24,612 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:24,612 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 20 states have (on average 3.4) internal successors, (68), 21 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) Word has length 30 [2022-02-20 23:39:24,612 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:24,612 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 21 states, 20 states have (on average 3.4) internal successors, (68), 21 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,658 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:24,658 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-02-20 23:39:24,658 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:24,659 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-02-20 23:39:24,659 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=73, Invalid=347, Unknown=0, NotChecked=0, Total=420 [2022-02-20 23:39:24,659 INFO L87 Difference]: Start difference. First operand 102 states and 119 transitions. Second operand has 21 states, 20 states have (on average 3.4) internal successors, (68), 21 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,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,259 INFO L93 Difference]: Finished difference Result 136 states and 154 transitions. [2022-02-20 23:39:25,259 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:39:25,259 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 20 states have (on average 3.4) internal successors, (68), 21 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) Word has length 30 [2022-02-20 23:39:25,259 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:25,259 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 3.4) internal successors, (68), 21 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,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 94 transitions. [2022-02-20 23:39:25,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 20 states have (on average 3.4) internal successors, (68), 21 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,260 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 94 transitions. [2022-02-20 23:39:25,261 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 94 transitions. [2022-02-20 23:39:25,330 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:25,331 INFO L225 Difference]: With dead ends: 136 [2022-02-20 23:39:25,331 INFO L226 Difference]: Without dead ends: 136 [2022-02-20 23:39:25,331 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 46 SyntacticMatches, 2 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 167 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=155, Invalid=547, Unknown=0, NotChecked=0, Total=702 [2022-02-20 23:39:25,331 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 393 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 215 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 393 SdHoareTripleChecker+Valid, 194 SdHoareTripleChecker+Invalid, 252 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 215 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:25,331 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [393 Valid, 194 Invalid, 252 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 215 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:39:25,332 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2022-02-20 23:39:25,333 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 98. [2022-02-20 23:39:25,333 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:25,333 INFO L82 GeneralOperation]: Start isEquivalent. First operand 136 states. Second operand has 98 states, 96 states have (on average 1.1770833333333333) internal successors, (113), 97 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (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,333 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand has 98 states, 96 states have (on average 1.1770833333333333) internal successors, (113), 97 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (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,333 INFO L87 Difference]: Start difference. First operand 136 states. Second operand has 98 states, 96 states have (on average 1.1770833333333333) internal successors, (113), 97 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (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,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,334 INFO L93 Difference]: Finished difference Result 136 states and 154 transitions. [2022-02-20 23:39:25,334 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 154 transitions. [2022-02-20 23:39:25,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:25,335 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:25,335 INFO L74 IsIncluded]: Start isIncluded. First operand has 98 states, 96 states have (on average 1.1770833333333333) internal successors, (113), 97 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 136 states. [2022-02-20 23:39:25,335 INFO L87 Difference]: Start difference. First operand has 98 states, 96 states have (on average 1.1770833333333333) internal successors, (113), 97 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 136 states. [2022-02-20 23:39:25,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:25,336 INFO L93 Difference]: Finished difference Result 136 states and 154 transitions. [2022-02-20 23:39:25,336 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 154 transitions. [2022-02-20 23:39:25,336 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:25,336 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:25,336 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:25,336 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:25,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 98 states, 96 states have (on average 1.1770833333333333) internal successors, (113), 97 states have internal predecessors, (113), 0 states have call successors, (0), 0 states have call predecessors, (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,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 98 states to 98 states and 113 transitions. [2022-02-20 23:39:25,337 INFO L78 Accepts]: Start accepts. Automaton has 98 states and 113 transitions. Word has length 30 [2022-02-20 23:39:25,337 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:25,337 INFO L470 AbstractCegarLoop]: Abstraction has 98 states and 113 transitions. [2022-02-20 23:39:25,337 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 20 states have (on average 3.4) internal successors, (68), 21 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,337 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 113 transitions. [2022-02-20 23:39:25,337 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-02-20 23:39:25,338 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:25,338 INFO L514 BasicCegarLoop]: trace histogram [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, 1, 1, 1] [2022-02-20 23:39:25,360 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:25,551 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:25,551 INFO L402 AbstractCegarLoop]: === Iteration 23 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:25,552 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:25,552 INFO L85 PathProgramCache]: Analyzing trace with hash -1001387738, now seen corresponding path program 2 times [2022-02-20 23:39:25,552 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:25,552 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [793097485] [2022-02-20 23:39:25,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:25,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:25,573 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:25,716 INFO L290 TraceCheckUtils]: 0: Hoare triple {7706#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7706#true} is VALID [2022-02-20 23:39:25,716 INFO L290 TraceCheckUtils]: 1: Hoare triple {7706#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {7706#true} is VALID [2022-02-20 23:39:25,716 INFO L290 TraceCheckUtils]: 2: Hoare triple {7706#true} assume !(main_~length1~0#1 < 1); {7706#true} is VALID [2022-02-20 23:39:25,716 INFO L290 TraceCheckUtils]: 3: Hoare triple {7706#true} assume !(main_~length2~0#1 < 1); {7706#true} is VALID [2022-02-20 23:39:25,716 INFO L290 TraceCheckUtils]: 4: Hoare triple {7706#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:25,717 INFO L290 TraceCheckUtils]: 5: Hoare triple {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:25,718 INFO L290 TraceCheckUtils]: 6: Hoare triple {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:25,719 INFO L290 TraceCheckUtils]: 7: Hoare triple {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet15#1; {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:25,719 INFO L290 TraceCheckUtils]: 8: Hoare triple {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:25,719 INFO L290 TraceCheckUtils]: 9: Hoare triple {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:25,720 INFO L290 TraceCheckUtils]: 10: Hoare triple {7708#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_~i~1#1 := 0; {7709#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} is VALID [2022-02-20 23:39:25,720 INFO L290 TraceCheckUtils]: 11: Hoare triple {7709#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (= |ULTIMATE.start_main_~i~1#1| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {7710#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} is VALID [2022-02-20 23:39:25,721 INFO L290 TraceCheckUtils]: 12: Hoare triple {7710#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {7710#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} is VALID [2022-02-20 23:39:25,721 INFO L290 TraceCheckUtils]: 13: Hoare triple {7710#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} havoc main_#t~nondet17#1; {7710#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} is VALID [2022-02-20 23:39:25,722 INFO L290 TraceCheckUtils]: 14: Hoare triple {7710#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (and (= |ULTIMATE.start_main_~i~1#1| 0) (<= 3 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|))) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {7711#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} is VALID [2022-02-20 23:39:25,722 INFO L290 TraceCheckUtils]: 15: Hoare triple {7711#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ 2 |ULTIMATE.start_main_~i~1#1|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {7712#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1))} is VALID [2022-02-20 23:39:25,723 INFO L290 TraceCheckUtils]: 16: Hoare triple {7712#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~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: L547-4 {7712#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1))} is VALID [2022-02-20 23:39:25,724 INFO L290 TraceCheckUtils]: 17: Hoare triple {7712#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 1))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {7713#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1) 0))} is VALID [2022-02-20 23:39:25,724 INFO L290 TraceCheckUtils]: 18: Hoare triple {7713#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) 1) 0))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {7714#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 1) 0))} is VALID [2022-02-20 23:39:25,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {7714#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 1) 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {7714#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 1) 0))} is VALID [2022-02-20 23:39:25,725 INFO L290 TraceCheckUtils]: 20: Hoare triple {7714#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 1) 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,726 INFO L290 TraceCheckUtils]: 21: Hoare triple {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,726 INFO L290 TraceCheckUtils]: 22: Hoare triple {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,726 INFO L290 TraceCheckUtils]: 23: Hoare triple {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,727 INFO L290 TraceCheckUtils]: 24: Hoare triple {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,727 INFO L290 TraceCheckUtils]: 25: Hoare triple {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume cstrcspn_#t~short7#1; {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,727 INFO L290 TraceCheckUtils]: 26: Hoare triple {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,728 INFO L290 TraceCheckUtils]: 27: Hoare triple {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:25,728 INFO L290 TraceCheckUtils]: 28: Hoare triple {7715#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:25,729 INFO L290 TraceCheckUtils]: 29: Hoare triple {7716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {7717#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:25,729 INFO L290 TraceCheckUtils]: 30: Hoare triple {7717#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {7718#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:25,729 INFO L290 TraceCheckUtils]: 31: Hoare triple {7718#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {7707#false} is VALID [2022-02-20 23:39:25,729 INFO L290 TraceCheckUtils]: 32: Hoare triple {7707#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {7707#false} is VALID [2022-02-20 23:39:25,729 INFO L290 TraceCheckUtils]: 33: Hoare triple {7707#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {7707#false} is VALID [2022-02-20 23:39:25,729 INFO L290 TraceCheckUtils]: 34: Hoare triple {7707#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7707#false} is VALID [2022-02-20 23:39:25,729 INFO L290 TraceCheckUtils]: 35: Hoare triple {7707#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {7707#false} is VALID [2022-02-20 23:39:25,730 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:25,730 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:25,730 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [793097485] [2022-02-20 23:39:25,730 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [793097485] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:25,730 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [114375163] [2022-02-20 23:39:25,730 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:39:25,730 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:25,730 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:25,731 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:25,731 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:25,803 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:39:25,803 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:25,804 INFO L263 TraceCheckSpWp]: Trace formula consists of 178 conjuncts, 31 conjunts are in the unsatisfiable core [2022-02-20 23:39:25,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:25,815 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:25,947 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:26,644 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:26,666 INFO L290 TraceCheckUtils]: 0: Hoare triple {7706#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 1: Hoare triple {7706#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 2: Hoare triple {7706#true} assume !(main_~length1~0#1 < 1); {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 3: Hoare triple {7706#true} assume !(main_~length2~0#1 < 1); {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 4: Hoare triple {7706#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 5: Hoare triple {7706#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 6: Hoare triple {7706#true} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 7: Hoare triple {7706#true} havoc main_#t~nondet15#1; {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 8: Hoare triple {7706#true} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 9: Hoare triple {7706#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7706#true} is VALID [2022-02-20 23:39:26,666 INFO L290 TraceCheckUtils]: 10: Hoare triple {7706#true} main_~i~1#1 := 0; {7752#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:26,667 INFO L290 TraceCheckUtils]: 11: Hoare triple {7752#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {7756#(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:26,667 INFO L290 TraceCheckUtils]: 12: Hoare triple {7756#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {7756#(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:26,668 INFO L290 TraceCheckUtils]: 13: Hoare triple {7756#(and (= |ULTIMATE.start_main_~i~1#1| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet17#1; {7756#(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:26,668 INFO L290 TraceCheckUtils]: 14: Hoare triple {7756#(and (= |ULTIMATE.start_main_~i~1#1| 0) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {7766#(and (<= |ULTIMATE.start_main_~i~1#1| 1) (< 1 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:26,669 INFO L290 TraceCheckUtils]: 15: Hoare triple {7766#(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); {7770#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} is VALID [2022-02-20 23:39:26,669 INFO L290 TraceCheckUtils]: 16: Hoare triple {7770#(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: L547-4 {7770#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} is VALID [2022-02-20 23:39:26,670 INFO L290 TraceCheckUtils]: 17: Hoare triple {7770#(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: L552 {7777#(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:26,670 INFO L290 TraceCheckUtils]: 18: Hoare triple {7777#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {7781#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrcspn_~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:26,671 INFO L290 TraceCheckUtils]: 19: Hoare triple {7781#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrcspn_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {7781#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrcspn_~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:26,671 INFO L290 TraceCheckUtils]: 20: Hoare triple {7781#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1| |ULTIMATE.start_cstrcspn_~s2#1.offset|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |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:26,672 INFO L290 TraceCheckUtils]: 21: Hoare triple {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |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:26,672 INFO L290 TraceCheckUtils]: 22: Hoare triple {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |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:26,673 INFO L290 TraceCheckUtils]: 23: Hoare triple {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |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:26,673 INFO L290 TraceCheckUtils]: 24: Hoare triple {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |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:26,674 INFO L290 TraceCheckUtils]: 25: Hoare triple {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume cstrcspn_#t~short7#1; {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |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:26,674 INFO L290 TraceCheckUtils]: 26: Hoare triple {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |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:26,674 INFO L290 TraceCheckUtils]: 27: Hoare triple {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |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:26,675 INFO L290 TraceCheckUtils]: 28: Hoare triple {7788#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:26,675 INFO L290 TraceCheckUtils]: 29: Hoare triple {7716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {7717#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:26,676 INFO L290 TraceCheckUtils]: 30: Hoare triple {7717#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {7718#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:26,676 INFO L290 TraceCheckUtils]: 31: Hoare triple {7718#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {7707#false} is VALID [2022-02-20 23:39:26,676 INFO L290 TraceCheckUtils]: 32: Hoare triple {7707#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {7707#false} is VALID [2022-02-20 23:39:26,676 INFO L290 TraceCheckUtils]: 33: Hoare triple {7707#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {7707#false} is VALID [2022-02-20 23:39:26,676 INFO L290 TraceCheckUtils]: 34: Hoare triple {7707#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7707#false} is VALID [2022-02-20 23:39:26,676 INFO L290 TraceCheckUtils]: 35: Hoare triple {7707#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {7707#false} is VALID [2022-02-20 23:39:26,676 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:26,676 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:26,778 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 13 [2022-02-20 23:39:26,783 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 26 treesize of output 22 [2022-02-20 23:39:26,966 INFO L290 TraceCheckUtils]: 35: Hoare triple {7707#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {7707#false} is VALID [2022-02-20 23:39:26,966 INFO L290 TraceCheckUtils]: 34: Hoare triple {7707#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7707#false} is VALID [2022-02-20 23:39:26,966 INFO L290 TraceCheckUtils]: 33: Hoare triple {7707#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {7707#false} is VALID [2022-02-20 23:39:26,966 INFO L290 TraceCheckUtils]: 32: Hoare triple {7707#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {7707#false} is VALID [2022-02-20 23:39:26,967 INFO L290 TraceCheckUtils]: 31: Hoare triple {7718#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {7707#false} is VALID [2022-02-20 23:39:26,967 INFO L290 TraceCheckUtils]: 30: Hoare triple {7717#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {7718#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:26,967 INFO L290 TraceCheckUtils]: 29: Hoare triple {7716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {7717#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:26,968 INFO L290 TraceCheckUtils]: 28: Hoare triple {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {7716#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:26,968 INFO L290 TraceCheckUtils]: 27: Hoare triple {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,968 INFO L290 TraceCheckUtils]: 26: Hoare triple {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,969 INFO L290 TraceCheckUtils]: 25: Hoare triple {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} assume cstrcspn_#t~short7#1; {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,969 INFO L290 TraceCheckUtils]: 24: Hoare triple {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,969 INFO L290 TraceCheckUtils]: 23: Hoare triple {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,969 INFO L290 TraceCheckUtils]: 22: Hoare triple {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,970 INFO L290 TraceCheckUtils]: 21: Hoare triple {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,970 INFO L290 TraceCheckUtils]: 20: Hoare triple {7880#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1)) 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {7855#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,970 INFO L290 TraceCheckUtils]: 19: Hoare triple {7880#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {7880#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,971 INFO L290 TraceCheckUtils]: 18: Hoare triple {7887#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) 0)} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {7880#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,971 INFO L290 TraceCheckUtils]: 17: Hoare triple {7770#(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: L552 {7887#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:26,972 INFO L290 TraceCheckUtils]: 16: Hoare triple {7770#(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: L547-4 {7770#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} is VALID [2022-02-20 23:39:26,972 INFO L290 TraceCheckUtils]: 15: Hoare triple {7897#(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); {7770#(and (< 1 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 2))} is VALID [2022-02-20 23:39:26,973 INFO L290 TraceCheckUtils]: 14: Hoare triple {7901#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {7897#(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:26,973 INFO L290 TraceCheckUtils]: 13: Hoare triple {7901#(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~nondet17#1; {7901#(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:26,973 INFO L290 TraceCheckUtils]: 12: Hoare triple {7901#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {7901#(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:26,974 INFO L290 TraceCheckUtils]: 11: Hoare triple {7752#(= |ULTIMATE.start_main_~i~1#1| 0)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {7901#(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:26,974 INFO L290 TraceCheckUtils]: 10: Hoare triple {7706#true} main_~i~1#1 := 0; {7752#(= |ULTIMATE.start_main_~i~1#1| 0)} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 9: Hoare triple {7706#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {7706#true} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 8: Hoare triple {7706#true} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {7706#true} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 7: Hoare triple {7706#true} havoc main_#t~nondet15#1; {7706#true} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 6: Hoare triple {7706#true} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {7706#true} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 5: Hoare triple {7706#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {7706#true} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 4: Hoare triple {7706#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {7706#true} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 3: Hoare triple {7706#true} assume !(main_~length2~0#1 < 1); {7706#true} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 2: Hoare triple {7706#true} assume !(main_~length1~0#1 < 1); {7706#true} is VALID [2022-02-20 23:39:26,974 INFO L290 TraceCheckUtils]: 1: Hoare triple {7706#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {7706#true} is VALID [2022-02-20 23:39:26,975 INFO L290 TraceCheckUtils]: 0: Hoare triple {7706#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {7706#true} is VALID [2022-02-20 23:39:26,975 INFO L134 CoverageAnalysis]: Checked inductivity of 10 backedges. 5 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:26,975 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [114375163] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:26,975 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:26,975 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 12] total 25 [2022-02-20 23:39:26,975 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1941878642] [2022-02-20 23:39:26,975 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:26,975 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 3.12) internal successors, (78), 25 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 36 [2022-02-20 23:39:26,975 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:26,976 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 25 states, 25 states have (on average 3.12) internal successors, (78), 25 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (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,042 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:27,042 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-02-20 23:39:27,042 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:27,043 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-02-20 23:39:27,043 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=517, Unknown=0, NotChecked=0, Total=600 [2022-02-20 23:39:27,043 INFO L87 Difference]: Start difference. First operand 98 states and 113 transitions. Second operand has 25 states, 25 states have (on average 3.12) internal successors, (78), 25 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (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,142 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:28,143 INFO L93 Difference]: Finished difference Result 176 states and 197 transitions. [2022-02-20 23:39:28,143 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-02-20 23:39:28,143 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 3.12) internal successors, (78), 25 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 36 [2022-02-20 23:39:28,143 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:28,143 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 3.12) internal successors, (78), 25 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (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,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 113 transitions. [2022-02-20 23:39:28,144 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 3.12) internal successors, (78), 25 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (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,144 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 113 transitions. [2022-02-20 23:39:28,145 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 113 transitions. [2022-02-20 23:39:28,243 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:28,245 INFO L225 Difference]: With dead ends: 176 [2022-02-20 23:39:28,245 INFO L226 Difference]: Without dead ends: 176 [2022-02-20 23:39:28,246 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 98 GetRequests, 57 SyntacticMatches, 3 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 3 DeprecatedPredicates, 328 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=320, Invalid=1240, Unknown=0, NotChecked=0, Total=1560 [2022-02-20 23:39:28,246 INFO L933 BasicCegarLoop]: 41 mSDtfsCounter, 383 mSDsluCounter, 366 mSDsCounter, 0 mSdLazyCounter, 301 mSolverCounterSat, 63 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 383 SdHoareTripleChecker+Valid, 407 SdHoareTripleChecker+Invalid, 433 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 63 IncrementalHoareTripleChecker+Valid, 301 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 69 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:28,246 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [383 Valid, 407 Invalid, 433 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [63 Valid, 301 Invalid, 0 Unknown, 69 Unchecked, 0.2s Time] [2022-02-20 23:39:28,247 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 176 states. [2022-02-20 23:39:28,248 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 176 to 140. [2022-02-20 23:39:28,248 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:28,249 INFO L82 GeneralOperation]: Start isEquivalent. First operand 176 states. Second operand has 140 states, 138 states have (on average 1.1666666666666667) internal successors, (161), 139 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:39:28,249 INFO L74 IsIncluded]: Start isIncluded. First operand 176 states. Second operand has 140 states, 138 states have (on average 1.1666666666666667) internal successors, (161), 139 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:39:28,249 INFO L87 Difference]: Start difference. First operand 176 states. Second operand has 140 states, 138 states have (on average 1.1666666666666667) internal successors, (161), 139 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:39:28,251 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:28,251 INFO L93 Difference]: Finished difference Result 176 states and 197 transitions. [2022-02-20 23:39:28,251 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 197 transitions. [2022-02-20 23:39:28,251 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:28,251 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:28,251 INFO L74 IsIncluded]: Start isIncluded. First operand has 140 states, 138 states have (on average 1.1666666666666667) internal successors, (161), 139 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 176 states. [2022-02-20 23:39:28,251 INFO L87 Difference]: Start difference. First operand has 140 states, 138 states have (on average 1.1666666666666667) internal successors, (161), 139 states have internal predecessors, (161), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 176 states. [2022-02-20 23:39:28,253 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:28,253 INFO L93 Difference]: Finished difference Result 176 states and 197 transitions. [2022-02-20 23:39:28,253 INFO L276 IsEmpty]: Start isEmpty. Operand 176 states and 197 transitions. [2022-02-20 23:39:28,253 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:28,253 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:28,253 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:28,253 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:28,253 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 140 states, 138 states have (on average 1.1666666666666667) internal successors, (161), 139 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:39:28,254 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 161 transitions. [2022-02-20 23:39:28,254 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 161 transitions. Word has length 36 [2022-02-20 23:39:28,255 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:28,255 INFO L470 AbstractCegarLoop]: Abstraction has 140 states and 161 transitions. [2022-02-20 23:39:28,255 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 25 states have (on average 3.12) internal successors, (78), 25 states have internal predecessors, (78), 0 states have call successors, (0), 0 states have call predecessors, (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,255 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 161 transitions. [2022-02-20 23:39:28,256 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-02-20 23:39:28,256 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:28,256 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:28,274 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:28,469 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,SelfDestructingSolverStorable22 [2022-02-20 23:39:28,471 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:28,472 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:28,472 INFO L85 PathProgramCache]: Analyzing trace with hash 1892678105, now seen corresponding path program 2 times [2022-02-20 23:39:28,472 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:28,472 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1715706353] [2022-02-20 23:39:28,472 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:28,472 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:28,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:28,662 INFO L290 TraceCheckUtils]: 0: Hoare triple {8641#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8641#true} is VALID [2022-02-20 23:39:28,662 INFO L290 TraceCheckUtils]: 1: Hoare triple {8641#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {8641#true} is VALID [2022-02-20 23:39:28,662 INFO L290 TraceCheckUtils]: 2: Hoare triple {8641#true} assume !(main_~length1~0#1 < 1); {8641#true} is VALID [2022-02-20 23:39:28,662 INFO L290 TraceCheckUtils]: 3: Hoare triple {8641#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {8641#true} is VALID [2022-02-20 23:39:28,663 INFO L290 TraceCheckUtils]: 4: Hoare triple {8641#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {8643#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (not (= 2 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,663 INFO L290 TraceCheckUtils]: 5: Hoare triple {8643#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (not (= 2 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {8644#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ 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:28,664 INFO L290 TraceCheckUtils]: 6: Hoare triple {8644#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ 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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8644#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ 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:28,664 INFO L290 TraceCheckUtils]: 7: Hoare triple {8644#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet15#1; {8644#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ 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:28,665 INFO L290 TraceCheckUtils]: 8: Hoare triple {8644#(and (= |ULTIMATE.start_main_~i~0#1| 0) (or (<= 3 (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|)) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {8645#(and (or (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,665 INFO L290 TraceCheckUtils]: 9: Hoare triple {8645#(and (or (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= (+ (- 1) |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 1)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8646#(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:28,666 INFO L290 TraceCheckUtils]: 10: Hoare triple {8646#(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; {8646#(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:28,666 INFO L290 TraceCheckUtils]: 11: Hoare triple {8646#(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); {8646#(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:28,667 INFO L290 TraceCheckUtils]: 12: Hoare triple {8646#(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: L547-4 {8647#(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:28,667 INFO L290 TraceCheckUtils]: 13: Hoare triple {8647#(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: L552 {8647#(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:28,668 INFO L290 TraceCheckUtils]: 14: Hoare triple {8647#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,668 INFO L290 TraceCheckUtils]: 15: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,669 INFO L290 TraceCheckUtils]: 16: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,669 INFO L290 TraceCheckUtils]: 17: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,669 INFO L290 TraceCheckUtils]: 18: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,670 INFO L290 TraceCheckUtils]: 19: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,670 INFO L290 TraceCheckUtils]: 20: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,670 INFO L290 TraceCheckUtils]: 21: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,671 INFO L290 TraceCheckUtils]: 22: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,671 INFO L290 TraceCheckUtils]: 23: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,672 INFO L290 TraceCheckUtils]: 24: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:28,672 INFO L290 TraceCheckUtils]: 25: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {8649#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} is VALID [2022-02-20 23:39:28,672 INFO L290 TraceCheckUtils]: 26: Hoare triple {8649#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {8650#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 27: Hoare triple {8650#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 28: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 29: Hoare triple {8642#false} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 30: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 31: Hoare triple {8642#false} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 32: Hoare triple {8642#false} assume !cstrcspn_#t~short7#1; {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 33: Hoare triple {8642#false} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 34: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 35: Hoare triple {8642#false} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 36: Hoare triple {8642#false} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L290 TraceCheckUtils]: 37: Hoare triple {8642#false} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {8642#false} is VALID [2022-02-20 23:39:28,673 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 11 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:28,673 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:28,673 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1715706353] [2022-02-20 23:39:28,673 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1715706353] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:28,673 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1593403373] [2022-02-20 23:39:28,673 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 23:39:28,674 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:28,674 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:28,674 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:28,675 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:28,734 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 23:39:28,734 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:28,735 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 43 conjunts are in the unsatisfiable core [2022-02-20 23:39:28,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:28,746 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:28,776 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:28,912 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:39:28,945 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 14 treesize of output 16 [2022-02-20 23:39:29,052 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 15 treesize of output 7 [2022-02-20 23:39:29,068 INFO L290 TraceCheckUtils]: 0: Hoare triple {8641#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8641#true} is VALID [2022-02-20 23:39:29,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {8641#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {8641#true} is VALID [2022-02-20 23:39:29,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {8641#true} assume !(main_~length1~0#1 < 1); {8641#true} is VALID [2022-02-20 23:39:29,069 INFO L290 TraceCheckUtils]: 3: Hoare triple {8641#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {8641#true} is VALID [2022-02-20 23:39:29,069 INFO L290 TraceCheckUtils]: 4: Hoare triple {8641#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {8666#(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:29,070 INFO L290 TraceCheckUtils]: 5: Hoare triple {8666#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {8670#(and (= |ULTIMATE.start_main_~i~0#1| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#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:29,070 INFO L290 TraceCheckUtils]: 6: Hoare triple {8670#(and (= |ULTIMATE.start_main_~i~0#1| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8670#(and (= |ULTIMATE.start_main_~i~0#1| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#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:29,071 INFO L290 TraceCheckUtils]: 7: Hoare triple {8670#(and (= |ULTIMATE.start_main_~i~0#1| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (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~nondet15#1; {8670#(and (= |ULTIMATE.start_main_~i~0#1| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#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:29,071 INFO L290 TraceCheckUtils]: 8: Hoare triple {8670#(and (= |ULTIMATE.start_main_~i~0#1| 0) (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {8680#(and (< 1 |ULTIMATE.start_main_~length1~0#1|) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} is VALID [2022-02-20 23:39:29,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {8680#(and (< 1 |ULTIMATE.start_main_~length1~0#1|) (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8646#(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:29,072 INFO L290 TraceCheckUtils]: 10: Hoare triple {8646#(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; {8646#(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:29,072 INFO L290 TraceCheckUtils]: 11: Hoare triple {8646#(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); {8646#(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:29,073 INFO L290 TraceCheckUtils]: 12: Hoare triple {8646#(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: L547-4 {8647#(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:29,073 INFO L290 TraceCheckUtils]: 13: Hoare triple {8647#(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: L552 {8696#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,074 INFO L290 TraceCheckUtils]: 14: Hoare triple {8696#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) 1) 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,074 INFO L290 TraceCheckUtils]: 15: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,075 INFO L290 TraceCheckUtils]: 16: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,075 INFO L290 TraceCheckUtils]: 17: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,075 INFO L290 TraceCheckUtils]: 18: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,076 INFO L290 TraceCheckUtils]: 19: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,076 INFO L290 TraceCheckUtils]: 20: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,077 INFO L290 TraceCheckUtils]: 21: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,077 INFO L290 TraceCheckUtils]: 22: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,077 INFO L290 TraceCheckUtils]: 23: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,078 INFO L290 TraceCheckUtils]: 24: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:29,078 INFO L290 TraceCheckUtils]: 25: Hoare triple {8648#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {8733#(and (= (+ (- 1) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0))} is VALID [2022-02-20 23:39:29,078 INFO L290 TraceCheckUtils]: 26: Hoare triple {8733#(and (= (+ (- 1) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 1) 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {8650#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 27: Hoare triple {8650#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 28: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 29: Hoare triple {8642#false} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 30: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 31: Hoare triple {8642#false} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 32: Hoare triple {8642#false} assume !cstrcspn_#t~short7#1; {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 33: Hoare triple {8642#false} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 34: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 35: Hoare triple {8642#false} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 36: Hoare triple {8642#false} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L290 TraceCheckUtils]: 37: Hoare triple {8642#false} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {8642#false} is VALID [2022-02-20 23:39:29,079 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 11 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:29,079 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:29,160 WARN L838 $PredicateComparison]: unable to prove that (forall ((v_ArrVal_279 (Array Int Int))) (= (select (select (store |c_#memory_int| |c_ULTIMATE.start_main_~nondetString2~0#1.base| v_ArrVal_279) |c_ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |c_ULTIMATE.start_main_~nondetString1~0#1.offset| 1)) 0)) is different from false [2022-02-20 23:39:29,170 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:39:29,170 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 23 treesize of output 24 [2022-02-20 23:39:29,183 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:39:29,183 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 37 treesize of output 37 [2022-02-20 23:39:29,186 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:39:29,402 INFO L290 TraceCheckUtils]: 37: Hoare triple {8642#false} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {8642#false} is VALID [2022-02-20 23:39:29,402 INFO L290 TraceCheckUtils]: 36: Hoare triple {8642#false} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {8642#false} is VALID [2022-02-20 23:39:29,402 INFO L290 TraceCheckUtils]: 35: Hoare triple {8642#false} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {8642#false} is VALID [2022-02-20 23:39:29,402 INFO L290 TraceCheckUtils]: 34: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {8642#false} is VALID [2022-02-20 23:39:29,402 INFO L290 TraceCheckUtils]: 33: Hoare triple {8642#false} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {8642#false} is VALID [2022-02-20 23:39:29,402 INFO L290 TraceCheckUtils]: 32: Hoare triple {8642#false} assume !cstrcspn_#t~short7#1; {8642#false} is VALID [2022-02-20 23:39:29,403 INFO L290 TraceCheckUtils]: 31: Hoare triple {8642#false} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {8642#false} is VALID [2022-02-20 23:39:29,403 INFO L290 TraceCheckUtils]: 30: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {8642#false} is VALID [2022-02-20 23:39:29,403 INFO L290 TraceCheckUtils]: 29: Hoare triple {8642#false} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {8642#false} is VALID [2022-02-20 23:39:29,403 INFO L290 TraceCheckUtils]: 28: Hoare triple {8642#false} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {8642#false} is VALID [2022-02-20 23:39:29,403 INFO L290 TraceCheckUtils]: 27: Hoare triple {8650#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {8642#false} is VALID [2022-02-20 23:39:29,403 INFO L290 TraceCheckUtils]: 26: Hoare triple {8649#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {8650#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} is VALID [2022-02-20 23:39:29,404 INFO L290 TraceCheckUtils]: 25: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {8649#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} is VALID [2022-02-20 23:39:29,404 INFO L290 TraceCheckUtils]: 24: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,404 INFO L290 TraceCheckUtils]: 23: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,405 INFO L290 TraceCheckUtils]: 22: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,405 INFO L290 TraceCheckUtils]: 21: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} assume !cstrcspn_#t~short7#1; {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,405 INFO L290 TraceCheckUtils]: 20: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,405 INFO L290 TraceCheckUtils]: 19: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,406 INFO L290 TraceCheckUtils]: 18: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,406 INFO L290 TraceCheckUtils]: 17: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,406 INFO L290 TraceCheckUtils]: 16: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,406 INFO L290 TraceCheckUtils]: 15: Hoare triple {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,423 INFO L290 TraceCheckUtils]: 14: Hoare triple {8840#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)) 0)} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {8806#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,433 INFO L290 TraceCheckUtils]: 13: Hoare triple {8844#(forall ((v_ArrVal_279 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base| v_ArrVal_279) |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)) 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {8840#(= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:29,434 INFO L290 TraceCheckUtils]: 12: Hoare triple {8848#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~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: L547-4 {8844#(forall ((v_ArrVal_279 (Array Int Int))) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base| v_ArrVal_279) |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1)) 0))} is VALID [2022-02-20 23:39:29,434 INFO L290 TraceCheckUtils]: 11: Hoare triple {8848#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {8848#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2))} is VALID [2022-02-20 23:39:29,435 INFO L290 TraceCheckUtils]: 10: Hoare triple {8848#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2))} main_~i~1#1 := 0; {8848#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2))} is VALID [2022-02-20 23:39:29,435 INFO L290 TraceCheckUtils]: 9: Hoare triple {8858#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {8848#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2))} is VALID [2022-02-20 23:39:29,436 INFO L290 TraceCheckUtils]: 8: Hoare triple {8862#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2)))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {8858#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2)))} is VALID [2022-02-20 23:39:29,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {8862#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2)))} havoc main_#t~nondet15#1; {8862#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2)))} is VALID [2022-02-20 23:39:29,437 INFO L290 TraceCheckUtils]: 6: Hoare triple {8862#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2)))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {8862#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2)))} is VALID [2022-02-20 23:39:29,437 INFO L290 TraceCheckUtils]: 5: Hoare triple {8872#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {8862#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (= |ULTIMATE.start_main_~length1~0#1| 2)))} is VALID [2022-02-20 23:39:29,438 INFO L290 TraceCheckUtils]: 4: Hoare triple {8641#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {8872#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= 0 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:39:29,438 INFO L290 TraceCheckUtils]: 3: Hoare triple {8641#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {8641#true} is VALID [2022-02-20 23:39:29,438 INFO L290 TraceCheckUtils]: 2: Hoare triple {8641#true} assume !(main_~length1~0#1 < 1); {8641#true} is VALID [2022-02-20 23:39:29,438 INFO L290 TraceCheckUtils]: 1: Hoare triple {8641#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {8641#true} is VALID [2022-02-20 23:39:29,438 INFO L290 TraceCheckUtils]: 0: Hoare triple {8641#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {8641#true} is VALID [2022-02-20 23:39:29,438 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 11 proven. 3 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:29,438 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1593403373] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:29,438 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:29,438 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 11, 11] total 22 [2022-02-20 23:39:29,439 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [425906264] [2022-02-20 23:39:29,439 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:29,439 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 3.1818181818181817) internal successors, (70), 22 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 38 [2022-02-20 23:39:29,439 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:29,439 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 3.1818181818181817) internal successors, (70), 22 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:29,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:29,492 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-02-20 23:39:29,492 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:29,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-02-20 23:39:29,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=353, Unknown=1, NotChecked=38, Total=462 [2022-02-20 23:39:29,492 INFO L87 Difference]: Start difference. First operand 140 states and 161 transitions. Second operand has 22 states, 22 states have (on average 3.1818181818181817) internal successors, (70), 22 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:29,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:29,898 INFO L93 Difference]: Finished difference Result 231 states and 260 transitions. [2022-02-20 23:39:29,898 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 23:39:29,898 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 3.1818181818181817) internal successors, (70), 22 states have internal predecessors, (70), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 38 [2022-02-20 23:39:29,899 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:29,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 3.1818181818181817) internal successors, (70), 22 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:29,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 73 transitions. [2022-02-20 23:39:29,899 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 3.1818181818181817) internal successors, (70), 22 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:29,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 73 transitions. [2022-02-20 23:39:29,900 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 73 transitions. [2022-02-20 23:39:29,958 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:29,959 INFO L225 Difference]: With dead ends: 231 [2022-02-20 23:39:29,959 INFO L226 Difference]: Without dead ends: 185 [2022-02-20 23:39:29,960 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 64 SyntacticMatches, 1 SemanticMatches, 25 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 144 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=113, Invalid=540, Unknown=1, NotChecked=48, Total=702 [2022-02-20 23:39:29,960 INFO L933 BasicCegarLoop]: 23 mSDtfsCounter, 84 mSDsluCounter, 201 mSDsCounter, 0 mSdLazyCounter, 167 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 224 SdHoareTripleChecker+Invalid, 208 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 167 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 34 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:29,960 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [84 Valid, 224 Invalid, 208 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 167 Invalid, 0 Unknown, 34 Unchecked, 0.1s Time] [2022-02-20 23:39:29,961 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 185 states. [2022-02-20 23:39:29,962 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 185 to 178. [2022-02-20 23:39:29,962 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:29,962 INFO L82 GeneralOperation]: Start isEquivalent. First operand 185 states. Second operand has 178 states, 176 states have (on average 1.1477272727272727) internal successors, (202), 177 states have internal predecessors, (202), 0 states have call successors, (0), 0 states have call predecessors, (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,963 INFO L74 IsIncluded]: Start isIncluded. First operand 185 states. Second operand has 178 states, 176 states have (on average 1.1477272727272727) internal successors, (202), 177 states have internal predecessors, (202), 0 states have call successors, (0), 0 states have call predecessors, (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,963 INFO L87 Difference]: Start difference. First operand 185 states. Second operand has 178 states, 176 states have (on average 1.1477272727272727) internal successors, (202), 177 states have internal predecessors, (202), 0 states have call successors, (0), 0 states have call predecessors, (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,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:29,964 INFO L93 Difference]: Finished difference Result 185 states and 208 transitions. [2022-02-20 23:39:29,964 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 208 transitions. [2022-02-20 23:39:29,965 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:29,965 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:29,965 INFO L74 IsIncluded]: Start isIncluded. First operand has 178 states, 176 states have (on average 1.1477272727272727) internal successors, (202), 177 states have internal predecessors, (202), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 185 states. [2022-02-20 23:39:29,965 INFO L87 Difference]: Start difference. First operand has 178 states, 176 states have (on average 1.1477272727272727) internal successors, (202), 177 states have internal predecessors, (202), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 185 states. [2022-02-20 23:39:29,967 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:29,967 INFO L93 Difference]: Finished difference Result 185 states and 208 transitions. [2022-02-20 23:39:29,967 INFO L276 IsEmpty]: Start isEmpty. Operand 185 states and 208 transitions. [2022-02-20 23:39:29,967 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:29,967 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:29,967 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:29,967 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:29,967 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 178 states, 176 states have (on average 1.1477272727272727) internal successors, (202), 177 states have internal predecessors, (202), 0 states have call successors, (0), 0 states have call predecessors, (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,969 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 178 states to 178 states and 202 transitions. [2022-02-20 23:39:29,969 INFO L78 Accepts]: Start accepts. Automaton has 178 states and 202 transitions. Word has length 38 [2022-02-20 23:39:29,969 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:29,969 INFO L470 AbstractCegarLoop]: Abstraction has 178 states and 202 transitions. [2022-02-20 23:39:29,969 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 3.1818181818181817) internal successors, (70), 22 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:29,969 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 202 transitions. [2022-02-20 23:39:29,969 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-02-20 23:39:29,969 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:29,969 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 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] [2022-02-20 23:39:29,996 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:30,183 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:30,183 INFO L402 AbstractCegarLoop]: === Iteration 25 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:30,184 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:30,184 INFO L85 PathProgramCache]: Analyzing trace with hash -304963965, now seen corresponding path program 3 times [2022-02-20 23:39:30,184 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:30,184 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1209177068] [2022-02-20 23:39:30,184 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:30,184 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:30,221 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:30,328 INFO L290 TraceCheckUtils]: 0: Hoare triple {9676#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9676#true} is VALID [2022-02-20 23:39:30,328 INFO L290 TraceCheckUtils]: 1: Hoare triple {9676#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {9676#true} is VALID [2022-02-20 23:39:30,328 INFO L290 TraceCheckUtils]: 2: Hoare triple {9676#true} assume !(main_~length1~0#1 < 1); {9676#true} is VALID [2022-02-20 23:39:30,328 INFO L290 TraceCheckUtils]: 3: Hoare triple {9676#true} assume !(main_~length2~0#1 < 1); {9676#true} is VALID [2022-02-20 23:39:30,329 INFO L290 TraceCheckUtils]: 4: Hoare triple {9676#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {9678#(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:30,330 INFO L290 TraceCheckUtils]: 5: Hoare triple {9678#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {9678#(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:30,330 INFO L290 TraceCheckUtils]: 6: Hoare triple {9678#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9678#(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:30,331 INFO L290 TraceCheckUtils]: 7: Hoare triple {9678#(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~nondet15#1; {9678#(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:30,331 INFO L290 TraceCheckUtils]: 8: Hoare triple {9678#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {9678#(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:30,331 INFO L290 TraceCheckUtils]: 9: Hoare triple {9678#(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); {9678#(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:30,332 INFO L290 TraceCheckUtils]: 10: Hoare triple {9678#(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; {9679#(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:30,332 INFO L290 TraceCheckUtils]: 11: Hoare triple {9679#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {9679#(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:30,333 INFO L290 TraceCheckUtils]: 12: Hoare triple {9679#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {9679#(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:30,333 INFO L290 TraceCheckUtils]: 13: Hoare triple {9679#(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~nondet17#1; {9679#(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:30,334 INFO L290 TraceCheckUtils]: 14: Hoare triple {9679#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9680#(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:30,334 INFO L290 TraceCheckUtils]: 15: Hoare triple {9680#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {9681#(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:30,335 INFO L290 TraceCheckUtils]: 16: Hoare triple {9681#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {9681#(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:30,335 INFO L290 TraceCheckUtils]: 17: Hoare triple {9681#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet17#1; {9681#(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:30,335 INFO L290 TraceCheckUtils]: 18: Hoare triple {9681#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9681#(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:30,336 INFO L290 TraceCheckUtils]: 19: Hoare triple {9681#(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); {9681#(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:30,336 INFO L290 TraceCheckUtils]: 20: Hoare triple {9681#(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: L547-4 {9681#(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:30,337 INFO L290 TraceCheckUtils]: 21: Hoare triple {9681#(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: L552 {9681#(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:30,337 INFO L290 TraceCheckUtils]: 22: Hoare triple {9681#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {9682#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:30,338 INFO L290 TraceCheckUtils]: 23: Hoare triple {9682#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {9682#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:30,338 INFO L290 TraceCheckUtils]: 24: Hoare triple {9682#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,339 INFO L290 TraceCheckUtils]: 25: Hoare triple {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,339 INFO L290 TraceCheckUtils]: 26: Hoare triple {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,339 INFO L290 TraceCheckUtils]: 27: Hoare triple {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,340 INFO L290 TraceCheckUtils]: 28: Hoare triple {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,340 INFO L290 TraceCheckUtils]: 29: Hoare triple {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume cstrcspn_#t~short7#1; {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,341 INFO L290 TraceCheckUtils]: 30: Hoare triple {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,341 INFO L290 TraceCheckUtils]: 31: Hoare triple {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:30,341 INFO L290 TraceCheckUtils]: 32: Hoare triple {9683#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,342 INFO L290 TraceCheckUtils]: 33: Hoare triple {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,342 INFO L290 TraceCheckUtils]: 34: Hoare triple {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,343 INFO L290 TraceCheckUtils]: 35: Hoare triple {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,343 INFO L290 TraceCheckUtils]: 36: Hoare triple {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,344 INFO L290 TraceCheckUtils]: 37: Hoare triple {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,344 INFO L290 TraceCheckUtils]: 38: Hoare triple {9684#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {9685#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,345 INFO L290 TraceCheckUtils]: 39: Hoare triple {9685#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {9677#false} is VALID [2022-02-20 23:39:30,345 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:30,345 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:30,345 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1209177068] [2022-02-20 23:39:30,345 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1209177068] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:30,345 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [731953460] [2022-02-20 23:39:30,345 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:39:30,345 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:30,346 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:30,347 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:30,348 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:30,430 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-02-20 23:39:30,431 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:30,432 INFO L263 TraceCheckSpWp]: Trace formula consists of 192 conjuncts, 24 conjunts are in the unsatisfiable core [2022-02-20 23:39:30,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:30,445 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:30,727 INFO L290 TraceCheckUtils]: 0: Hoare triple {9676#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9676#true} is VALID [2022-02-20 23:39:30,727 INFO L290 TraceCheckUtils]: 1: Hoare triple {9676#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {9676#true} is VALID [2022-02-20 23:39:30,727 INFO L290 TraceCheckUtils]: 2: Hoare triple {9676#true} assume !(main_~length1~0#1 < 1); {9676#true} is VALID [2022-02-20 23:39:30,727 INFO L290 TraceCheckUtils]: 3: Hoare triple {9676#true} assume !(main_~length2~0#1 < 1); {9676#true} is VALID [2022-02-20 23:39:30,727 INFO L290 TraceCheckUtils]: 4: Hoare triple {9676#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {9676#true} is VALID [2022-02-20 23:39:30,727 INFO L290 TraceCheckUtils]: 5: Hoare triple {9676#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {9676#true} is VALID [2022-02-20 23:39:30,728 INFO L290 TraceCheckUtils]: 6: Hoare triple {9676#true} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9676#true} is VALID [2022-02-20 23:39:30,728 INFO L290 TraceCheckUtils]: 7: Hoare triple {9676#true} havoc main_#t~nondet15#1; {9676#true} is VALID [2022-02-20 23:39:30,728 INFO L290 TraceCheckUtils]: 8: Hoare triple {9676#true} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {9676#true} is VALID [2022-02-20 23:39:30,728 INFO L290 TraceCheckUtils]: 9: Hoare triple {9676#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {9676#true} is VALID [2022-02-20 23:39:30,728 INFO L290 TraceCheckUtils]: 10: Hoare triple {9676#true} main_~i~1#1 := 0; {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:30,728 INFO L290 TraceCheckUtils]: 11: Hoare triple {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:30,728 INFO L290 TraceCheckUtils]: 12: Hoare triple {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:30,729 INFO L290 TraceCheckUtils]: 13: Hoare triple {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet17#1; {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:30,729 INFO L290 TraceCheckUtils]: 14: Hoare triple {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9732#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:30,729 INFO L290 TraceCheckUtils]: 15: Hoare triple {9732#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:30,730 INFO L290 TraceCheckUtils]: 16: Hoare triple {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:30,730 INFO L290 TraceCheckUtils]: 17: Hoare triple {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet17#1; {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:30,730 INFO L290 TraceCheckUtils]: 18: Hoare triple {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:30,730 INFO L290 TraceCheckUtils]: 19: Hoare triple {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:30,731 INFO L290 TraceCheckUtils]: 20: Hoare triple {9736#(< 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: L547-4 {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:30,731 INFO L290 TraceCheckUtils]: 21: Hoare triple {9736#(< 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: L552 {9755#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} is VALID [2022-02-20 23:39:30,732 INFO L290 TraceCheckUtils]: 22: Hoare triple {9755#(< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {9759#(< (+ 2 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|))} is VALID [2022-02-20 23:39:30,732 INFO L290 TraceCheckUtils]: 23: Hoare triple {9759#(< (+ 2 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {9759#(< (+ 2 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|))} is VALID [2022-02-20 23:39:30,732 INFO L290 TraceCheckUtils]: 24: Hoare triple {9759#(< (+ 2 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,732 INFO L290 TraceCheckUtils]: 25: Hoare triple {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,733 INFO L290 TraceCheckUtils]: 26: Hoare triple {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,733 INFO L290 TraceCheckUtils]: 27: Hoare triple {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,733 INFO L290 TraceCheckUtils]: 28: Hoare triple {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,743 INFO L290 TraceCheckUtils]: 29: Hoare triple {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} assume cstrcspn_#t~short7#1; {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,744 INFO L290 TraceCheckUtils]: 30: Hoare triple {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,744 INFO L290 TraceCheckUtils]: 31: Hoare triple {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,744 INFO L290 TraceCheckUtils]: 32: Hoare triple {9766#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {9791#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,745 INFO L290 TraceCheckUtils]: 33: Hoare triple {9791#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {9791#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,745 INFO L290 TraceCheckUtils]: 34: Hoare triple {9791#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {9791#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,745 INFO L290 TraceCheckUtils]: 35: Hoare triple {9791#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} assume cstrcspn_#t~short7#1; {9791#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} is VALID [2022-02-20 23:39:30,746 INFO L290 TraceCheckUtils]: 36: Hoare triple {9791#(< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {9804#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,746 INFO L290 TraceCheckUtils]: 37: Hoare triple {9804#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {9804#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,747 INFO L290 TraceCheckUtils]: 38: Hoare triple {9804#(and (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {9811#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< |ULTIMATE.start_cstrcspn_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:30,747 INFO L290 TraceCheckUtils]: 39: Hoare triple {9811#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (< |ULTIMATE.start_cstrcspn_~s~0#1.offset| (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {9677#false} is VALID [2022-02-20 23:39:30,747 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 1 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:30,747 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:31,033 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:31,096 INFO L290 TraceCheckUtils]: 39: Hoare triple {9815#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {9677#false} is VALID [2022-02-20 23:39:31,097 INFO L290 TraceCheckUtils]: 38: Hoare triple {9819#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {9815#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:31,097 INFO L290 TraceCheckUtils]: 37: Hoare triple {9819#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {9819#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:31,098 INFO L290 TraceCheckUtils]: 36: Hoare triple {9826#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {9819#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:31,098 INFO L290 TraceCheckUtils]: 35: Hoare triple {9826#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} assume cstrcspn_#t~short7#1; {9826#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:39:31,098 INFO L290 TraceCheckUtils]: 34: Hoare triple {9826#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {9826#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:39:31,099 INFO L290 TraceCheckUtils]: 33: Hoare triple {9826#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {9826#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:39:31,099 INFO L290 TraceCheckUtils]: 32: Hoare triple {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {9826#(or (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:39:31,100 INFO L290 TraceCheckUtils]: 31: Hoare triple {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:31,100 INFO L290 TraceCheckUtils]: 30: Hoare triple {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:31,100 INFO L290 TraceCheckUtils]: 29: Hoare triple {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:31,101 INFO L290 TraceCheckUtils]: 28: Hoare triple {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:31,101 INFO L290 TraceCheckUtils]: 27: Hoare triple {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:31,102 INFO L290 TraceCheckUtils]: 26: Hoare triple {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:31,102 INFO L290 TraceCheckUtils]: 25: Hoare triple {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:31,102 INFO L290 TraceCheckUtils]: 24: Hoare triple {9864#(or (< (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {9839#(or (< (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:31,103 INFO L290 TraceCheckUtils]: 23: Hoare triple {9864#(or (< (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {9864#(or (< (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:31,103 INFO L290 TraceCheckUtils]: 22: Hoare triple {9871#(or (< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) 0) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {9864#(or (< (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 1) 0) (<= (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:31,104 INFO L290 TraceCheckUtils]: 21: Hoare triple {9736#(< 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: L552 {9871#(or (< (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) 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:31,104 INFO L290 TraceCheckUtils]: 20: Hoare triple {9736#(< 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: L547-4 {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:31,104 INFO L290 TraceCheckUtils]: 19: Hoare triple {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:31,104 INFO L290 TraceCheckUtils]: 18: Hoare triple {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:31,105 INFO L290 TraceCheckUtils]: 17: Hoare triple {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} havoc main_#t~nondet17#1; {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:31,105 INFO L290 TraceCheckUtils]: 16: Hoare triple {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:31,105 INFO L290 TraceCheckUtils]: 15: Hoare triple {9732#(<= 1 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {9736#(< 2 |ULTIMATE.start_main_~length2~0#1|)} is VALID [2022-02-20 23:39:31,106 INFO L290 TraceCheckUtils]: 14: Hoare triple {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {9732#(<= 1 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:31,106 INFO L290 TraceCheckUtils]: 13: Hoare triple {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} havoc main_#t~nondet17#1; {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:31,106 INFO L290 TraceCheckUtils]: 12: Hoare triple {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:31,106 INFO L290 TraceCheckUtils]: 11: Hoare triple {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 10: Hoare triple {9676#true} main_~i~1#1 := 0; {9719#(<= 0 |ULTIMATE.start_main_~i~1#1|)} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 9: Hoare triple {9676#true} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 8: Hoare triple {9676#true} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 7: Hoare triple {9676#true} havoc main_#t~nondet15#1; {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 6: Hoare triple {9676#true} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 5: Hoare triple {9676#true} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 4: Hoare triple {9676#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 3: Hoare triple {9676#true} assume !(main_~length2~0#1 < 1); {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 2: Hoare triple {9676#true} assume !(main_~length1~0#1 < 1); {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 1: Hoare triple {9676#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L290 TraceCheckUtils]: 0: Hoare triple {9676#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {9676#true} is VALID [2022-02-20 23:39:31,107 INFO L134 CoverageAnalysis]: Checked inductivity of 15 backedges. 1 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:31,107 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [731953460] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:31,107 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:31,108 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 10, 10] total 24 [2022-02-20 23:39:31,108 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [959183159] [2022-02-20 23:39:31,108 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:31,108 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 3.9583333333333335) internal successors, (95), 25 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 40 [2022-02-20 23:39:31,108 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:31,108 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 25 states, 24 states have (on average 3.9583333333333335) internal successors, (95), 25 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (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,176 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:31,176 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-02-20 23:39:31,176 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:31,176 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-02-20 23:39:31,176 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=517, Unknown=0, NotChecked=0, Total=600 [2022-02-20 23:39:31,176 INFO L87 Difference]: Start difference. First operand 178 states and 202 transitions. Second operand has 25 states, 24 states have (on average 3.9583333333333335) internal successors, (95), 25 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (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,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,431 INFO L93 Difference]: Finished difference Result 249 states and 279 transitions. [2022-02-20 23:39:32,431 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-02-20 23:39:32,431 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 24 states have (on average 3.9583333333333335) internal successors, (95), 25 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 40 [2022-02-20 23:39:32,431 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:32,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 3.9583333333333335) internal successors, (95), 25 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (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,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 127 transitions. [2022-02-20 23:39:32,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 24 states have (on average 3.9583333333333335) internal successors, (95), 25 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (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,433 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 127 transitions. [2022-02-20 23:39:32,433 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 127 transitions. [2022-02-20 23:39:32,528 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 127 edges. 127 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:32,531 INFO L225 Difference]: With dead ends: 249 [2022-02-20 23:39:32,531 INFO L226 Difference]: Without dead ends: 249 [2022-02-20 23:39:32,531 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 63 SyntacticMatches, 1 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 167 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=219, Invalid=903, Unknown=0, NotChecked=0, Total=1122 [2022-02-20 23:39:32,532 INFO L933 BasicCegarLoop]: 48 mSDtfsCounter, 561 mSDsluCounter, 361 mSDsCounter, 0 mSdLazyCounter, 497 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 561 SdHoareTripleChecker+Valid, 409 SdHoareTripleChecker+Invalid, 539 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 497 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:32,532 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [561 Valid, 409 Invalid, 539 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 497 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-02-20 23:39:32,532 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 249 states. [2022-02-20 23:39:32,535 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 249 to 196. [2022-02-20 23:39:32,536 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:32,536 INFO L82 GeneralOperation]: Start isEquivalent. First operand 249 states. Second operand has 196 states, 194 states have (on average 1.1546391752577319) internal successors, (224), 195 states have internal predecessors, (224), 0 states have call successors, (0), 0 states have call predecessors, (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,536 INFO L74 IsIncluded]: Start isIncluded. First operand 249 states. Second operand has 196 states, 194 states have (on average 1.1546391752577319) internal successors, (224), 195 states have internal predecessors, (224), 0 states have call successors, (0), 0 states have call predecessors, (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,537 INFO L87 Difference]: Start difference. First operand 249 states. Second operand has 196 states, 194 states have (on average 1.1546391752577319) internal successors, (224), 195 states have internal predecessors, (224), 0 states have call successors, (0), 0 states have call predecessors, (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,540 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,540 INFO L93 Difference]: Finished difference Result 249 states and 279 transitions. [2022-02-20 23:39:32,540 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 279 transitions. [2022-02-20 23:39:32,541 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:32,541 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:32,541 INFO L74 IsIncluded]: Start isIncluded. First operand has 196 states, 194 states have (on average 1.1546391752577319) internal successors, (224), 195 states have internal predecessors, (224), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 249 states. [2022-02-20 23:39:32,542 INFO L87 Difference]: Start difference. First operand has 196 states, 194 states have (on average 1.1546391752577319) internal successors, (224), 195 states have internal predecessors, (224), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 249 states. [2022-02-20 23:39:32,544 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:32,544 INFO L93 Difference]: Finished difference Result 249 states and 279 transitions. [2022-02-20 23:39:32,545 INFO L276 IsEmpty]: Start isEmpty. Operand 249 states and 279 transitions. [2022-02-20 23:39:32,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:32,545 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:32,545 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:32,545 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:32,545 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 196 states, 194 states have (on average 1.1546391752577319) internal successors, (224), 195 states have internal predecessors, (224), 0 states have call successors, (0), 0 states have call predecessors, (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,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 196 states to 196 states and 224 transitions. [2022-02-20 23:39:32,547 INFO L78 Accepts]: Start accepts. Automaton has 196 states and 224 transitions. Word has length 40 [2022-02-20 23:39:32,547 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:32,548 INFO L470 AbstractCegarLoop]: Abstraction has 196 states and 224 transitions. [2022-02-20 23:39:32,548 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 24 states have (on average 3.9583333333333335) internal successors, (95), 25 states have internal predecessors, (95), 0 states have call successors, (0), 0 states have call predecessors, (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,548 INFO L276 IsEmpty]: Start isEmpty. Operand 196 states and 224 transitions. [2022-02-20 23:39:32,548 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 23:39:32,548 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:32,548 INFO L514 BasicCegarLoop]: trace histogram [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] [2022-02-20 23:39:32,568 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:32,768 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:32,769 INFO L402 AbstractCegarLoop]: === Iteration 26 === 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,769 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:32,769 INFO L85 PathProgramCache]: Analyzing trace with hash 2034497590, now seen corresponding path program 3 times [2022-02-20 23:39:32,769 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:32,769 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [841230736] [2022-02-20 23:39:32,769 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:32,769 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:32,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:32,858 INFO L290 TraceCheckUtils]: 0: Hoare triple {10898#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10898#true} is VALID [2022-02-20 23:39:32,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {10898#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {10898#true} is VALID [2022-02-20 23:39:32,859 INFO L290 TraceCheckUtils]: 2: Hoare triple {10898#true} assume !(main_~length1~0#1 < 1); {10898#true} is VALID [2022-02-20 23:39:32,859 INFO L290 TraceCheckUtils]: 3: Hoare triple {10898#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {10898#true} is VALID [2022-02-20 23:39:32,859 INFO L290 TraceCheckUtils]: 4: Hoare triple {10898#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {10900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {10900#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {10900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,860 INFO L290 TraceCheckUtils]: 6: Hoare triple {10900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,861 INFO L290 TraceCheckUtils]: 7: Hoare triple {10900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet15#1; {10900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,861 INFO L290 TraceCheckUtils]: 8: Hoare triple {10900#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {10901#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,861 INFO L290 TraceCheckUtils]: 9: Hoare triple {10901#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,862 INFO L290 TraceCheckUtils]: 10: Hoare triple {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,862 INFO L290 TraceCheckUtils]: 11: Hoare triple {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet15#1; {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,862 INFO L290 TraceCheckUtils]: 12: Hoare triple {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,863 INFO L290 TraceCheckUtils]: 13: Hoare triple {10902#(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); {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,863 INFO L290 TraceCheckUtils]: 14: Hoare triple {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_~i~1#1 := 0; {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,864 INFO L290 TraceCheckUtils]: 15: Hoare triple {10902#(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); {10902#(and (<= 3 |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,864 INFO L290 TraceCheckUtils]: 16: Hoare triple {10902#(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: L547-4 {10903#(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:32,865 INFO L290 TraceCheckUtils]: 17: Hoare triple {10903#(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: L552 {10903#(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:32,865 INFO L290 TraceCheckUtils]: 18: Hoare triple {10903#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,865 INFO L290 TraceCheckUtils]: 19: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,866 INFO L290 TraceCheckUtils]: 20: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,866 INFO L290 TraceCheckUtils]: 21: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,867 INFO L290 TraceCheckUtils]: 22: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,867 INFO L290 TraceCheckUtils]: 23: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,867 INFO L290 TraceCheckUtils]: 24: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,868 INFO L290 TraceCheckUtils]: 25: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1; {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,868 INFO L290 TraceCheckUtils]: 26: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,869 INFO L290 TraceCheckUtils]: 27: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,869 INFO L290 TraceCheckUtils]: 28: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:32,869 INFO L290 TraceCheckUtils]: 29: Hoare triple {10904#(and (<= 3 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,870 INFO L290 TraceCheckUtils]: 30: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,870 INFO L290 TraceCheckUtils]: 31: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,871 INFO L290 TraceCheckUtils]: 32: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,871 INFO L290 TraceCheckUtils]: 33: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,871 INFO L290 TraceCheckUtils]: 34: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,872 INFO L290 TraceCheckUtils]: 35: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,872 INFO L290 TraceCheckUtils]: 36: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,873 INFO L290 TraceCheckUtils]: 37: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,873 INFO L290 TraceCheckUtils]: 38: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,873 INFO L290 TraceCheckUtils]: 39: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:32,874 INFO L290 TraceCheckUtils]: 40: Hoare triple {10905#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {10906#(and (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:32,874 INFO L290 TraceCheckUtils]: 41: Hoare triple {10906#(and (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {10899#false} is VALID [2022-02-20 23:39:32,875 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 0 proven. 19 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:32,875 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:32,875 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [841230736] [2022-02-20 23:39:32,875 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [841230736] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:32,875 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1396623038] [2022-02-20 23:39:32,875 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 23:39:32,875 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:32,875 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:32,876 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:32,877 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:32,955 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-02-20 23:39:32,955 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:32,956 INFO L263 TraceCheckSpWp]: Trace formula consists of 199 conjuncts, 24 conjunts are in the unsatisfiable core [2022-02-20 23:39:32,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:32,970 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:33,289 INFO L290 TraceCheckUtils]: 0: Hoare triple {10898#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10898#true} is VALID [2022-02-20 23:39:33,289 INFO L290 TraceCheckUtils]: 1: Hoare triple {10898#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {10898#true} is VALID [2022-02-20 23:39:33,289 INFO L290 TraceCheckUtils]: 2: Hoare triple {10898#true} assume !(main_~length1~0#1 < 1); {10898#true} is VALID [2022-02-20 23:39:33,289 INFO L290 TraceCheckUtils]: 3: Hoare triple {10898#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {10898#true} is VALID [2022-02-20 23:39:33,289 INFO L290 TraceCheckUtils]: 4: Hoare triple {10898#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,290 INFO L290 TraceCheckUtils]: 5: Hoare triple {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,290 INFO L290 TraceCheckUtils]: 6: Hoare triple {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,290 INFO L290 TraceCheckUtils]: 7: Hoare triple {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet15#1; {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,290 INFO L290 TraceCheckUtils]: 8: Hoare triple {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {10935#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,291 INFO L290 TraceCheckUtils]: 9: Hoare triple {10935#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,291 INFO L290 TraceCheckUtils]: 10: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,291 INFO L290 TraceCheckUtils]: 11: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet15#1; {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,292 INFO L290 TraceCheckUtils]: 12: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,292 INFO L290 TraceCheckUtils]: 13: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,292 INFO L290 TraceCheckUtils]: 14: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_~i~1#1 := 0; {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,292 INFO L290 TraceCheckUtils]: 15: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,293 INFO L290 TraceCheckUtils]: 16: Hoare triple {10939#(< 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: L547-4 {10961#(< (+ |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,293 INFO L290 TraceCheckUtils]: 17: Hoare triple {10961#(< (+ |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: L552 {10961#(< (+ |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,294 INFO L290 TraceCheckUtils]: 18: Hoare triple {10961#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 2) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,294 INFO L290 TraceCheckUtils]: 19: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,294 INFO L290 TraceCheckUtils]: 20: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,295 INFO L290 TraceCheckUtils]: 21: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,295 INFO L290 TraceCheckUtils]: 22: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,295 INFO L290 TraceCheckUtils]: 23: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,296 INFO L290 TraceCheckUtils]: 24: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,296 INFO L290 TraceCheckUtils]: 25: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} assume !cstrcspn_#t~short7#1; {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,296 INFO L290 TraceCheckUtils]: 26: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,296 INFO L290 TraceCheckUtils]: 27: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,297 INFO L290 TraceCheckUtils]: 28: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,297 INFO L290 TraceCheckUtils]: 29: Hoare triple {10968#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {11002#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,297 INFO L290 TraceCheckUtils]: 30: Hoare triple {11002#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {11002#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,298 INFO L290 TraceCheckUtils]: 31: Hoare triple {11002#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {11002#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:39:33,298 INFO L290 TraceCheckUtils]: 32: Hoare triple {11002#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,298 INFO L290 TraceCheckUtils]: 33: Hoare triple {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,299 INFO L290 TraceCheckUtils]: 34: Hoare triple {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,299 INFO L290 TraceCheckUtils]: 35: Hoare triple {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,299 INFO L290 TraceCheckUtils]: 36: Hoare triple {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,300 INFO L290 TraceCheckUtils]: 37: Hoare triple {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,300 INFO L290 TraceCheckUtils]: 38: Hoare triple {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,301 INFO L290 TraceCheckUtils]: 39: Hoare triple {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,301 INFO L290 TraceCheckUtils]: 40: Hoare triple {11012#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {11037#(and (< |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:33,301 INFO L290 TraceCheckUtils]: 41: Hoare triple {11037#(and (< |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {10899#false} is VALID [2022-02-20 23:39:33,302 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 1 proven. 18 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:33,302 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:33,613 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:33,680 INFO L290 TraceCheckUtils]: 41: Hoare triple {11041#(and (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {10899#false} is VALID [2022-02-20 23:39:33,681 INFO L290 TraceCheckUtils]: 40: Hoare triple {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {11041#(and (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,681 INFO L290 TraceCheckUtils]: 39: Hoare triple {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,682 INFO L290 TraceCheckUtils]: 38: Hoare triple {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,682 INFO L290 TraceCheckUtils]: 37: Hoare triple {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,683 INFO L290 TraceCheckUtils]: 36: Hoare triple {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !cstrcspn_#t~short7#1; {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,683 INFO L290 TraceCheckUtils]: 35: Hoare triple {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,684 INFO L290 TraceCheckUtils]: 34: Hoare triple {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,684 INFO L290 TraceCheckUtils]: 33: Hoare triple {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,685 INFO L290 TraceCheckUtils]: 32: Hoare triple {11070#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {11045#(and (<= 0 (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:39:33,685 INFO L290 TraceCheckUtils]: 31: Hoare triple {11070#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {11070#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|)))} is VALID [2022-02-20 23:39:33,686 INFO L290 TraceCheckUtils]: 30: Hoare triple {11070#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {11070#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|)))} is VALID [2022-02-20 23:39:33,687 INFO L290 TraceCheckUtils]: 29: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {11070#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (not (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|)))} is VALID [2022-02-20 23:39:33,687 INFO L290 TraceCheckUtils]: 28: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,688 INFO L290 TraceCheckUtils]: 27: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,688 INFO L290 TraceCheckUtils]: 26: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,689 INFO L290 TraceCheckUtils]: 25: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} assume !cstrcspn_#t~short7#1; {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,689 INFO L290 TraceCheckUtils]: 24: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,690 INFO L290 TraceCheckUtils]: 23: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,690 INFO L290 TraceCheckUtils]: 22: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,691 INFO L290 TraceCheckUtils]: 21: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,691 INFO L290 TraceCheckUtils]: 20: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,692 INFO L290 TraceCheckUtils]: 19: Hoare triple {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,693 INFO L290 TraceCheckUtils]: 18: Hoare triple {11114#(or (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) 0))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {11080#(or (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,693 INFO L290 TraceCheckUtils]: 17: Hoare triple {11114#(or (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) 0))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {11114#(or (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,694 INFO L290 TraceCheckUtils]: 16: Hoare triple {10939#(< 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: L547-4 {11114#(or (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 1) 0))} is VALID [2022-02-20 23:39:33,694 INFO L290 TraceCheckUtils]: 15: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,695 INFO L290 TraceCheckUtils]: 14: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_~i~1#1 := 0; {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,695 INFO L290 TraceCheckUtils]: 13: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,696 INFO L290 TraceCheckUtils]: 12: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,696 INFO L290 TraceCheckUtils]: 11: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet15#1; {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,696 INFO L290 TraceCheckUtils]: 10: Hoare triple {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,697 INFO L290 TraceCheckUtils]: 9: Hoare triple {10935#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {10939#(< 2 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:39:33,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {10935#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,698 INFO L290 TraceCheckUtils]: 7: Hoare triple {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet15#1; {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,698 INFO L290 TraceCheckUtils]: 6: Hoare triple {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,698 INFO L290 TraceCheckUtils]: 5: Hoare triple {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,699 INFO L290 TraceCheckUtils]: 4: Hoare triple {10898#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {10922#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:39:33,699 INFO L290 TraceCheckUtils]: 3: Hoare triple {10898#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {10898#true} is VALID [2022-02-20 23:39:33,699 INFO L290 TraceCheckUtils]: 2: Hoare triple {10898#true} assume !(main_~length1~0#1 < 1); {10898#true} is VALID [2022-02-20 23:39:33,700 INFO L290 TraceCheckUtils]: 1: Hoare triple {10898#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {10898#true} is VALID [2022-02-20 23:39:33,700 INFO L290 TraceCheckUtils]: 0: Hoare triple {10898#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {10898#true} is VALID [2022-02-20 23:39:33,700 INFO L134 CoverageAnalysis]: Checked inductivity of 19 backedges. 1 proven. 18 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:33,700 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1396623038] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:33,700 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:33,700 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 9, 9] total 21 [2022-02-20 23:39:33,700 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1957899834] [2022-02-20 23:39:33,701 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:33,701 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 5.0476190476190474) internal successors, (106), 22 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 42 [2022-02-20 23:39:33,701 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:33,701 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 22 states, 21 states have (on average 5.0476190476190474) internal successors, (106), 22 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:33,782 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:33,782 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-02-20 23:39:33,782 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:33,782 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-02-20 23:39:33,783 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=76, Invalid=386, Unknown=0, NotChecked=0, Total=462 [2022-02-20 23:39:33,783 INFO L87 Difference]: Start difference. First operand 196 states and 224 transitions. Second operand has 22 states, 21 states have (on average 5.0476190476190474) internal successors, (106), 22 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (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,608 INFO L93 Difference]: Finished difference Result 307 states and 349 transitions. [2022-02-20 23:39:34,608 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 23:39:34,608 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 21 states have (on average 5.0476190476190474) internal successors, (106), 22 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 42 [2022-02-20 23:39:34,608 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:34,608 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 5.0476190476190474) internal successors, (106), 22 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (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 11 states to 11 states and 112 transitions. [2022-02-20 23:39:34,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 5.0476190476190474) internal successors, (106), 22 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (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 11 states to 11 states and 112 transitions. [2022-02-20 23:39:34,610 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 112 transitions. [2022-02-20 23:39:34,690 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:34,693 INFO L225 Difference]: With dead ends: 307 [2022-02-20 23:39:34,693 INFO L226 Difference]: Without dead ends: 307 [2022-02-20 23:39:34,694 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 69 SyntacticMatches, 1 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 124 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=174, Invalid=638, Unknown=0, NotChecked=0, Total=812 [2022-02-20 23:39:34,694 INFO L933 BasicCegarLoop]: 49 mSDtfsCounter, 293 mSDsluCounter, 350 mSDsCounter, 0 mSdLazyCounter, 347 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 293 SdHoareTripleChecker+Valid, 399 SdHoareTripleChecker+Invalid, 364 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 347 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:34,694 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [293 Valid, 399 Invalid, 364 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 347 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 23:39:34,694 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 307 states. [2022-02-20 23:39:34,698 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 307 to 251. [2022-02-20 23:39:34,698 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:34,699 INFO L82 GeneralOperation]: Start isEquivalent. First operand 307 states. Second operand has 251 states, 249 states have (on average 1.1566265060240963) internal successors, (288), 250 states have internal predecessors, (288), 0 states have call successors, (0), 0 states have call predecessors, (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,699 INFO L74 IsIncluded]: Start isIncluded. First operand 307 states. Second operand has 251 states, 249 states have (on average 1.1566265060240963) internal successors, (288), 250 states have internal predecessors, (288), 0 states have call successors, (0), 0 states have call predecessors, (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,699 INFO L87 Difference]: Start difference. First operand 307 states. Second operand has 251 states, 249 states have (on average 1.1566265060240963) internal successors, (288), 250 states have internal predecessors, (288), 0 states have call successors, (0), 0 states have call predecessors, (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,703 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:34,703 INFO L93 Difference]: Finished difference Result 307 states and 349 transitions. [2022-02-20 23:39:34,703 INFO L276 IsEmpty]: Start isEmpty. Operand 307 states and 349 transitions. [2022-02-20 23:39:34,703 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:34,703 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:34,704 INFO L74 IsIncluded]: Start isIncluded. First operand has 251 states, 249 states have (on average 1.1566265060240963) internal successors, (288), 250 states have internal predecessors, (288), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 307 states. [2022-02-20 23:39:34,704 INFO L87 Difference]: Start difference. First operand has 251 states, 249 states have (on average 1.1566265060240963) internal successors, (288), 250 states have internal predecessors, (288), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 307 states. [2022-02-20 23:39:34,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:34,708 INFO L93 Difference]: Finished difference Result 307 states and 349 transitions. [2022-02-20 23:39:34,708 INFO L276 IsEmpty]: Start isEmpty. Operand 307 states and 349 transitions. [2022-02-20 23:39:34,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:34,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:34,708 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:34,708 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:34,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 251 states, 249 states have (on average 1.1566265060240963) internal successors, (288), 250 states have internal predecessors, (288), 0 states have call successors, (0), 0 states have call predecessors, (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,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 251 states to 251 states and 288 transitions. [2022-02-20 23:39:34,716 INFO L78 Accepts]: Start accepts. Automaton has 251 states and 288 transitions. Word has length 42 [2022-02-20 23:39:34,717 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:34,717 INFO L470 AbstractCegarLoop]: Abstraction has 251 states and 288 transitions. [2022-02-20 23:39:34,717 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 21 states have (on average 5.0476190476190474) internal successors, (106), 22 states have internal predecessors, (106), 0 states have call successors, (0), 0 states have call predecessors, (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,717 INFO L276 IsEmpty]: Start isEmpty. Operand 251 states and 288 transitions. [2022-02-20 23:39:34,717 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-02-20 23:39:34,717 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:34,717 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 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,734 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-02-20 23:39:34,930 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,SelfDestructingSolverStorable25 [2022-02-20 23:39:34,930 INFO L402 AbstractCegarLoop]: === Iteration 27 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:34,931 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:34,931 INFO L85 PathProgramCache]: Analyzing trace with hash 371510231, now seen corresponding path program 4 times [2022-02-20 23:39:34,931 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:34,931 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [862716842] [2022-02-20 23:39:34,931 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:34,931 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:34,952 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:35,345 INFO L290 TraceCheckUtils]: 0: Hoare triple {12354#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12354#true} is VALID [2022-02-20 23:39:35,346 INFO L290 TraceCheckUtils]: 1: Hoare triple {12354#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {12354#true} is VALID [2022-02-20 23:39:35,346 INFO L290 TraceCheckUtils]: 2: Hoare triple {12354#true} assume !(main_~length1~0#1 < 1); {12354#true} is VALID [2022-02-20 23:39:35,346 INFO L290 TraceCheckUtils]: 3: Hoare triple {12354#true} assume !(main_~length2~0#1 < 1); {12354#true} is VALID [2022-02-20 23:39:35,346 INFO L290 TraceCheckUtils]: 4: Hoare triple {12354#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {12356#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:39:35,347 INFO L290 TraceCheckUtils]: 5: Hoare triple {12356#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {12357#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:39:35,347 INFO L290 TraceCheckUtils]: 6: Hoare triple {12357#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12357#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:39:35,348 INFO L290 TraceCheckUtils]: 7: Hoare triple {12357#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)))} havoc main_#t~nondet15#1; {12357#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:39:35,349 INFO L290 TraceCheckUtils]: 8: Hoare triple {12357#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (<= (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|)))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {12358#(and (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~i~0#1| 1) (<= 2 |ULTIMATE.start_main_~length1~0#1|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|)) (<= |ULTIMATE.start_main_~i~0#1| 1)))} is VALID [2022-02-20 23:39:35,349 INFO L290 TraceCheckUtils]: 9: Hoare triple {12358#(and (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~i~0#1| 1) (<= 2 |ULTIMATE.start_main_~length1~0#1|))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|)) (<= |ULTIMATE.start_main_~i~0#1| 1)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {12359#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,350 INFO L290 TraceCheckUtils]: 10: Hoare triple {12359#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))} main_~i~1#1 := 0; {12360#(and (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (= |ULTIMATE.start_main_~i~1#1| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,351 INFO L290 TraceCheckUtils]: 11: Hoare triple {12360#(and (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (= |ULTIMATE.start_main_~i~1#1| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {12360#(and (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (= |ULTIMATE.start_main_~i~1#1| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,351 INFO L290 TraceCheckUtils]: 12: Hoare triple {12360#(and (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (= |ULTIMATE.start_main_~i~1#1| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {12360#(and (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (= |ULTIMATE.start_main_~i~1#1| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,352 INFO L290 TraceCheckUtils]: 13: Hoare triple {12360#(and (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (= |ULTIMATE.start_main_~i~1#1| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} havoc main_#t~nondet17#1; {12360#(and (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (= |ULTIMATE.start_main_~i~1#1| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {12360#(and (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (= |ULTIMATE.start_main_~i~1#1| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|)) (or (<= |ULTIMATE.start_main_~length1~0#1| 2) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))))) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {12361#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} is VALID [2022-02-20 23:39:35,353 INFO L290 TraceCheckUtils]: 15: Hoare triple {12361#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))) (or (<= |ULTIMATE.start_main_~length1~0#1| (+ |ULTIMATE.start_main_~i~1#1| 1)) (not (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) |ULTIMATE.start_main_~length1~0#1|))) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length1~0#1|)))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {12362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (<= (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,354 INFO L290 TraceCheckUtils]: 16: Hoare triple {12362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (<= (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {12362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (<= (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,355 INFO L290 TraceCheckUtils]: 17: Hoare triple {12362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (<= (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} havoc main_#t~nondet17#1; {12362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (<= (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,355 INFO L290 TraceCheckUtils]: 18: Hoare triple {12362#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0) (and (<= (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length1~0#1|) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|))) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {12363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~length1~0#1|)) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} is VALID [2022-02-20 23:39:35,356 INFO L290 TraceCheckUtils]: 19: Hoare triple {12363#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (or (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= |ULTIMATE.start_main_~i~1#1| |ULTIMATE.start_main_~length1~0#1|)) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (or (not (= (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| (* (- 1) |ULTIMATE.start_main_~length1~0#1|) |ULTIMATE.start_main_~length2~0#1|) 0)) (and (<= |ULTIMATE.start_main_~length1~0#1| 2) (<= 2 |ULTIMATE.start_main_~length1~0#1|))))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {12364#(and (<= |ULTIMATE.start_main_~length1~0#1| 2) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 2 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:39:35,356 INFO L290 TraceCheckUtils]: 20: Hoare triple {12364#(and (<= |ULTIMATE.start_main_~length1~0#1| 2) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (+ |ULTIMATE.start_main_~length1~0#1| 1) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| (+ |ULTIMATE.start_main_~length1~0#1| 1)) (<= 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: L547-4 {12365#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:35,357 INFO L290 TraceCheckUtils]: 21: Hoare triple {12365#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= 2 (+ (- 1) |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: L552 {12366#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,357 INFO L290 TraceCheckUtils]: 22: Hoare triple {12366#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) 2) 0))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {12367#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,358 INFO L290 TraceCheckUtils]: 23: Hoare triple {12367#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 2) 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {12367#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,358 INFO L290 TraceCheckUtils]: 24: Hoare triple {12367#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 2) 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,359 INFO L290 TraceCheckUtils]: 25: Hoare triple {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,359 INFO L290 TraceCheckUtils]: 26: Hoare triple {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,359 INFO L290 TraceCheckUtils]: 27: Hoare triple {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,360 INFO L290 TraceCheckUtils]: 28: Hoare triple {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,360 INFO L290 TraceCheckUtils]: 29: Hoare triple {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} assume cstrcspn_#t~short7#1; {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,360 INFO L290 TraceCheckUtils]: 30: Hoare triple {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,361 INFO L290 TraceCheckUtils]: 31: Hoare triple {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} is VALID [2022-02-20 23:39:35,361 INFO L290 TraceCheckUtils]: 32: Hoare triple {12368#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 2) 0))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:35,361 INFO L290 TraceCheckUtils]: 33: Hoare triple {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:35,362 INFO L290 TraceCheckUtils]: 34: Hoare triple {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:35,362 INFO L290 TraceCheckUtils]: 35: Hoare triple {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} assume cstrcspn_#t~short7#1; {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:35,362 INFO L290 TraceCheckUtils]: 36: Hoare triple {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:35,362 INFO L290 TraceCheckUtils]: 37: Hoare triple {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:35,363 INFO L290 TraceCheckUtils]: 38: Hoare triple {12369#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12370#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:35,363 INFO L290 TraceCheckUtils]: 39: Hoare triple {12370#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12371#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:35,363 INFO L290 TraceCheckUtils]: 40: Hoare triple {12371#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12372#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:35,364 INFO L290 TraceCheckUtils]: 41: Hoare triple {12372#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {12355#false} is VALID [2022-02-20 23:39:35,364 INFO L290 TraceCheckUtils]: 42: Hoare triple {12355#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12355#false} is VALID [2022-02-20 23:39:35,364 INFO L290 TraceCheckUtils]: 43: Hoare triple {12355#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12355#false} is VALID [2022-02-20 23:39:35,364 INFO L290 TraceCheckUtils]: 44: Hoare triple {12355#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12355#false} is VALID [2022-02-20 23:39:35,364 INFO L290 TraceCheckUtils]: 45: Hoare triple {12355#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {12355#false} is VALID [2022-02-20 23:39:35,365 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 9 proven. 19 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:35,365 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:35,365 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [862716842] [2022-02-20 23:39:35,365 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [862716842] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:35,365 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [108532807] [2022-02-20 23:39:35,365 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:39:35,365 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:35,365 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:35,366 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:35,366 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:35,435 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:39:35,435 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:35,436 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 34 conjunts are in the unsatisfiable core [2022-02-20 23:39:35,453 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:35,453 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:35,506 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:39:35,506 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:35,780 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:39:37,275 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:39:37,275 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 7 [2022-02-20 23:39:37,327 INFO L290 TraceCheckUtils]: 0: Hoare triple {12354#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12354#true} is VALID [2022-02-20 23:39:37,328 INFO L290 TraceCheckUtils]: 1: Hoare triple {12354#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {12354#true} is VALID [2022-02-20 23:39:37,328 INFO L290 TraceCheckUtils]: 2: Hoare triple {12354#true} assume !(main_~length1~0#1 < 1); {12354#true} is VALID [2022-02-20 23:39:37,329 INFO L290 TraceCheckUtils]: 3: Hoare triple {12354#true} assume !(main_~length2~0#1 < 1); {12354#true} is VALID [2022-02-20 23:39:37,329 INFO L290 TraceCheckUtils]: 4: Hoare triple {12354#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:37,330 INFO L290 TraceCheckUtils]: 5: Hoare triple {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:37,330 INFO L290 TraceCheckUtils]: 6: Hoare triple {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:37,331 INFO L290 TraceCheckUtils]: 7: Hoare triple {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet15#1; {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:37,331 INFO L290 TraceCheckUtils]: 8: Hoare triple {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:37,331 INFO L290 TraceCheckUtils]: 9: Hoare triple {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:37,332 INFO L290 TraceCheckUtils]: 10: Hoare triple {12388#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} main_~i~1#1 := 0; {12407#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:37,332 INFO L290 TraceCheckUtils]: 11: Hoare triple {12407#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {12407#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:37,333 INFO L290 TraceCheckUtils]: 12: Hoare triple {12407#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {12407#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:37,333 INFO L290 TraceCheckUtils]: 13: Hoare triple {12407#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} havoc main_#t~nondet17#1; {12407#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:37,334 INFO L290 TraceCheckUtils]: 14: Hoare triple {12407#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {12420#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:39:37,334 INFO L290 TraceCheckUtils]: 15: Hoare triple {12420#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {12420#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:39:37,335 INFO L290 TraceCheckUtils]: 16: Hoare triple {12420#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {12420#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:39:37,335 INFO L290 TraceCheckUtils]: 17: Hoare triple {12420#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} havoc main_#t~nondet17#1; {12420#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:39:37,336 INFO L290 TraceCheckUtils]: 18: Hoare triple {12420#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {12433#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:37,336 INFO L290 TraceCheckUtils]: 19: Hoare triple {12433#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {12437#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 3))} is VALID [2022-02-20 23:39:37,337 INFO L290 TraceCheckUtils]: 20: Hoare triple {12437#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~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: L547-4 {12437#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 3))} is VALID [2022-02-20 23:39:37,337 INFO L290 TraceCheckUtils]: 21: Hoare triple {12437#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 3))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {12444#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} is VALID [2022-02-20 23:39:37,338 INFO L290 TraceCheckUtils]: 22: Hoare triple {12444#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {12448#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} is VALID [2022-02-20 23:39:37,339 INFO L290 TraceCheckUtils]: 23: Hoare triple {12448#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {12448#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} is VALID [2022-02-20 23:39:37,340 INFO L290 TraceCheckUtils]: 24: Hoare triple {12448#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|)) 0) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {12455#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} is VALID [2022-02-20 23:39:37,340 INFO L290 TraceCheckUtils]: 25: Hoare triple {12455#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {12455#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} is VALID [2022-02-20 23:39:37,341 INFO L290 TraceCheckUtils]: 26: Hoare triple {12455#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {12455#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} is VALID [2022-02-20 23:39:37,342 INFO L290 TraceCheckUtils]: 27: Hoare triple {12455#(exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,342 INFO L290 TraceCheckUtils]: 28: Hoare triple {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,343 INFO L290 TraceCheckUtils]: 29: Hoare triple {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} assume cstrcspn_#t~short7#1; {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,344 INFO L290 TraceCheckUtils]: 30: Hoare triple {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,344 INFO L290 TraceCheckUtils]: 31: Hoare triple {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,345 INFO L290 TraceCheckUtils]: 32: Hoare triple {12465#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,346 INFO L290 TraceCheckUtils]: 33: Hoare triple {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,346 INFO L290 TraceCheckUtils]: 34: Hoare triple {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,347 INFO L290 TraceCheckUtils]: 35: Hoare triple {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} assume cstrcspn_#t~short7#1; {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,348 INFO L290 TraceCheckUtils]: 36: Hoare triple {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,349 INFO L290 TraceCheckUtils]: 37: Hoare triple {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,349 INFO L290 TraceCheckUtils]: 38: Hoare triple {12481#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12500#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:37,350 INFO L290 TraceCheckUtils]: 39: Hoare triple {12500#(and (exists ((|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (= 0 (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length2~0#1|))) (<= |ULTIMATE.start_main_~length2~0#1| 3))) (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12371#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:37,350 INFO L290 TraceCheckUtils]: 40: Hoare triple {12371#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12372#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:37,351 INFO L290 TraceCheckUtils]: 41: Hoare triple {12372#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {12355#false} is VALID [2022-02-20 23:39:37,351 INFO L290 TraceCheckUtils]: 42: Hoare triple {12355#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12355#false} is VALID [2022-02-20 23:39:37,352 INFO L290 TraceCheckUtils]: 43: Hoare triple {12355#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12355#false} is VALID [2022-02-20 23:39:37,352 INFO L290 TraceCheckUtils]: 44: Hoare triple {12355#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12355#false} is VALID [2022-02-20 23:39:37,352 INFO L290 TraceCheckUtils]: 45: Hoare triple {12355#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {12355#false} is VALID [2022-02-20 23:39:37,352 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 17 proven. 10 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:37,352 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:38,789 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 11 [2022-02-20 23:39:38,807 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 20 treesize of output 18 [2022-02-20 23:39:39,351 INFO L290 TraceCheckUtils]: 45: Hoare triple {12355#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {12355#false} is VALID [2022-02-20 23:39:39,351 INFO L290 TraceCheckUtils]: 44: Hoare triple {12355#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12355#false} is VALID [2022-02-20 23:39:39,351 INFO L290 TraceCheckUtils]: 43: Hoare triple {12355#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12355#false} is VALID [2022-02-20 23:39:39,351 INFO L290 TraceCheckUtils]: 42: Hoare triple {12355#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12355#false} is VALID [2022-02-20 23:39:39,351 INFO L290 TraceCheckUtils]: 41: Hoare triple {12372#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {12355#false} is VALID [2022-02-20 23:39:39,352 INFO L290 TraceCheckUtils]: 40: Hoare triple {12371#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12372#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:39,352 INFO L290 TraceCheckUtils]: 39: Hoare triple {12540#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12371#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:39,353 INFO L290 TraceCheckUtils]: 38: Hoare triple {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12540#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))))} is VALID [2022-02-20 23:39:39,353 INFO L290 TraceCheckUtils]: 37: Hoare triple {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,354 INFO L290 TraceCheckUtils]: 36: Hoare triple {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,354 INFO L290 TraceCheckUtils]: 35: Hoare triple {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} assume cstrcspn_#t~short7#1; {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,355 INFO L290 TraceCheckUtils]: 34: Hoare triple {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,355 INFO L290 TraceCheckUtils]: 33: Hoare triple {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,356 INFO L290 TraceCheckUtils]: 32: Hoare triple {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {12544#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,356 INFO L290 TraceCheckUtils]: 31: Hoare triple {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} is VALID [2022-02-20 23:39:39,356 INFO L290 TraceCheckUtils]: 30: Hoare triple {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} is VALID [2022-02-20 23:39:39,357 INFO L290 TraceCheckUtils]: 29: Hoare triple {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} assume cstrcspn_#t~short7#1; {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} is VALID [2022-02-20 23:39:39,357 INFO L290 TraceCheckUtils]: 28: Hoare triple {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} is VALID [2022-02-20 23:39:39,358 INFO L290 TraceCheckUtils]: 27: Hoare triple {12579#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {12563#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2))))} is VALID [2022-02-20 23:39:39,358 INFO L290 TraceCheckUtils]: 26: Hoare triple {12579#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {12579#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,359 INFO L290 TraceCheckUtils]: 25: Hoare triple {12579#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {12579#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,359 INFO L290 TraceCheckUtils]: 24: Hoare triple {12589#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {12579#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,360 INFO L290 TraceCheckUtils]: 23: Hoare triple {12589#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {12589#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))))} is VALID [2022-02-20 23:39:39,360 INFO L290 TraceCheckUtils]: 22: Hoare triple {12596#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {12589#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))))} is VALID [2022-02-20 23:39:39,361 INFO L290 TraceCheckUtils]: 21: Hoare triple {12600#(and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {12596#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38| 2) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_38|) 0)))} is VALID [2022-02-20 23:39:39,361 INFO L290 TraceCheckUtils]: 20: Hoare triple {12600#(and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~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: L547-4 {12600#(and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3)))} is VALID [2022-02-20 23:39:39,362 INFO L290 TraceCheckUtils]: 19: Hoare triple {12607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {12600#(and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3)))} is VALID [2022-02-20 23:39:39,362 INFO L290 TraceCheckUtils]: 18: Hoare triple {12611#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {12607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,363 INFO L290 TraceCheckUtils]: 17: Hoare triple {12611#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))))} havoc main_#t~nondet17#1; {12611#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))))} is VALID [2022-02-20 23:39:39,363 INFO L290 TraceCheckUtils]: 16: Hoare triple {12611#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {12611#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))))} is VALID [2022-02-20 23:39:39,364 INFO L290 TraceCheckUtils]: 15: Hoare triple {12611#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {12611#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))))} is VALID [2022-02-20 23:39:39,365 INFO L290 TraceCheckUtils]: 14: Hoare triple {12624#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {12611#(or (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|) (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))))} is VALID [2022-02-20 23:39:39,365 INFO L290 TraceCheckUtils]: 13: Hoare triple {12624#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet17#1; {12624#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,366 INFO L290 TraceCheckUtils]: 12: Hoare triple {12624#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {12624#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,366 INFO L290 TraceCheckUtils]: 11: Hoare triple {12624#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {12624#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,367 INFO L290 TraceCheckUtils]: 10: Hoare triple {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} main_~i~1#1 := 0; {12624#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,367 INFO L290 TraceCheckUtils]: 9: Hoare triple {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,368 INFO L290 TraceCheckUtils]: 8: Hoare triple {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,368 INFO L290 TraceCheckUtils]: 7: Hoare triple {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet15#1; {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,369 INFO L290 TraceCheckUtils]: 6: Hoare triple {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,370 INFO L290 TraceCheckUtils]: 5: Hoare triple {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,370 INFO L290 TraceCheckUtils]: 4: Hoare triple {12354#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {12637#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|) 3))) (< 3 |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:39,370 INFO L290 TraceCheckUtils]: 3: Hoare triple {12354#true} assume !(main_~length2~0#1 < 1); {12354#true} is VALID [2022-02-20 23:39:39,370 INFO L290 TraceCheckUtils]: 2: Hoare triple {12354#true} assume !(main_~length1~0#1 < 1); {12354#true} is VALID [2022-02-20 23:39:39,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {12354#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {12354#true} is VALID [2022-02-20 23:39:39,371 INFO L290 TraceCheckUtils]: 0: Hoare triple {12354#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {12354#true} is VALID [2022-02-20 23:39:39,371 INFO L134 CoverageAnalysis]: Checked inductivity of 28 backedges. 14 proven. 13 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:39,371 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [108532807] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:39,371 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:39,371 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 15, 15] total 41 [2022-02-20 23:39:39,371 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [620389619] [2022-02-20 23:39:39,371 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:39,372 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 2.8780487804878048) internal successors, (118), 41 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 46 [2022-02-20 23:39:39,372 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:39,372 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 41 states, 41 states have (on average 2.8780487804878048) internal successors, (118), 41 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:39,485 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:39,485 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 41 states [2022-02-20 23:39:39,485 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:39,486 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 41 interpolants. [2022-02-20 23:39:39,486 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=139, Invalid=1501, Unknown=0, NotChecked=0, Total=1640 [2022-02-20 23:39:39,486 INFO L87 Difference]: Start difference. First operand 251 states and 288 transitions. Second operand has 41 states, 41 states have (on average 2.8780487804878048) internal successors, (118), 41 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:41,534 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:41,534 INFO L93 Difference]: Finished difference Result 322 states and 364 transitions. [2022-02-20 23:39:41,534 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 35 states. [2022-02-20 23:39:41,534 INFO L78 Accepts]: Start accepts. Automaton has has 41 states, 41 states have (on average 2.8780487804878048) internal successors, (118), 41 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 46 [2022-02-20 23:39:41,534 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:41,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 2.8780487804878048) internal successors, (118), 41 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:41,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 139 transitions. [2022-02-20 23:39:41,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 41 states have (on average 2.8780487804878048) internal successors, (118), 41 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:41,536 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 139 transitions. [2022-02-20 23:39:41,536 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 35 states and 139 transitions. [2022-02-20 23:39:41,648 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 139 edges. 139 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:41,651 INFO L225 Difference]: With dead ends: 322 [2022-02-20 23:39:41,652 INFO L226 Difference]: Without dead ends: 300 [2022-02-20 23:39:41,652 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 137 GetRequests, 72 SyntacticMatches, 2 SemanticMatches, 63 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 932 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=441, Invalid=3719, Unknown=0, NotChecked=0, Total=4160 [2022-02-20 23:39:41,653 INFO L933 BasicCegarLoop]: 27 mSDtfsCounter, 242 mSDsluCounter, 545 mSDsCounter, 0 mSdLazyCounter, 357 mSolverCounterSat, 41 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 242 SdHoareTripleChecker+Valid, 572 SdHoareTripleChecker+Invalid, 693 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 41 IncrementalHoareTripleChecker+Valid, 357 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 295 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:41,653 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [242 Valid, 572 Invalid, 693 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [41 Valid, 357 Invalid, 0 Unknown, 295 Unchecked, 0.3s Time] [2022-02-20 23:39:41,653 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 300 states. [2022-02-20 23:39:41,656 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 300 to 281. [2022-02-20 23:39:41,656 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:41,676 INFO L82 GeneralOperation]: Start isEquivalent. First operand 300 states. Second operand has 281 states, 279 states have (on average 1.157706093189964) internal successors, (323), 280 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:41,676 INFO L74 IsIncluded]: Start isIncluded. First operand 300 states. Second operand has 281 states, 279 states have (on average 1.157706093189964) internal successors, (323), 280 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:41,676 INFO L87 Difference]: Start difference. First operand 300 states. Second operand has 281 states, 279 states have (on average 1.157706093189964) internal successors, (323), 280 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:41,680 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:41,680 INFO L93 Difference]: Finished difference Result 300 states and 342 transitions. [2022-02-20 23:39:41,680 INFO L276 IsEmpty]: Start isEmpty. Operand 300 states and 342 transitions. [2022-02-20 23:39:41,680 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:41,680 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:41,681 INFO L74 IsIncluded]: Start isIncluded. First operand has 281 states, 279 states have (on average 1.157706093189964) internal successors, (323), 280 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 300 states. [2022-02-20 23:39:41,681 INFO L87 Difference]: Start difference. First operand has 281 states, 279 states have (on average 1.157706093189964) internal successors, (323), 280 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 300 states. [2022-02-20 23:39:41,684 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:41,684 INFO L93 Difference]: Finished difference Result 300 states and 342 transitions. [2022-02-20 23:39:41,684 INFO L276 IsEmpty]: Start isEmpty. Operand 300 states and 342 transitions. [2022-02-20 23:39:41,685 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:41,685 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:41,685 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:41,685 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:41,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 281 states, 279 states have (on average 1.157706093189964) internal successors, (323), 280 states have internal predecessors, (323), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:41,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 281 states to 281 states and 323 transitions. [2022-02-20 23:39:41,689 INFO L78 Accepts]: Start accepts. Automaton has 281 states and 323 transitions. Word has length 46 [2022-02-20 23:39:41,689 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:41,689 INFO L470 AbstractCegarLoop]: Abstraction has 281 states and 323 transitions. [2022-02-20 23:39:41,689 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 41 states, 41 states have (on average 2.8780487804878048) internal successors, (118), 41 states have internal predecessors, (118), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:41,689 INFO L276 IsEmpty]: Start isEmpty. Operand 281 states and 323 transitions. [2022-02-20 23:39:41,690 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-02-20 23:39:41,690 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:41,690 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 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:41,708 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:41,904 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,SelfDestructingSolverStorable26 [2022-02-20 23:39:41,905 INFO L402 AbstractCegarLoop]: === Iteration 28 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:41,905 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:41,905 INFO L85 PathProgramCache]: Analyzing trace with hash -129625868, now seen corresponding path program 5 times [2022-02-20 23:39:41,905 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:41,906 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1396293206] [2022-02-20 23:39:41,906 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:41,906 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:41,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:42,066 INFO L290 TraceCheckUtils]: 0: Hoare triple {13922#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13922#true} is VALID [2022-02-20 23:39:42,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {13922#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {13922#true} is VALID [2022-02-20 23:39:42,066 INFO L290 TraceCheckUtils]: 2: Hoare triple {13922#true} assume !(main_~length1~0#1 < 1); {13922#true} is VALID [2022-02-20 23:39:42,066 INFO L290 TraceCheckUtils]: 3: Hoare triple {13922#true} assume !(main_~length2~0#1 < 1); {13922#true} is VALID [2022-02-20 23:39:42,067 INFO L290 TraceCheckUtils]: 4: Hoare triple {13922#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {13924#(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:42,067 INFO L290 TraceCheckUtils]: 5: Hoare triple {13924#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {13924#(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:42,068 INFO L290 TraceCheckUtils]: 6: Hoare triple {13924#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13924#(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:42,068 INFO L290 TraceCheckUtils]: 7: Hoare triple {13924#(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~nondet15#1; {13924#(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:42,068 INFO L290 TraceCheckUtils]: 8: Hoare triple {13924#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {13924#(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:42,069 INFO L290 TraceCheckUtils]: 9: Hoare triple {13924#(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); {13924#(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:42,069 INFO L290 TraceCheckUtils]: 10: Hoare triple {13924#(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; {13925#(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:42,069 INFO L290 TraceCheckUtils]: 11: Hoare triple {13925#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {13925#(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:42,070 INFO L290 TraceCheckUtils]: 12: Hoare triple {13925#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {13925#(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:42,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {13925#(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~nondet17#1; {13925#(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:42,071 INFO L290 TraceCheckUtils]: 14: Hoare triple {13925#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {13926#(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:42,071 INFO L290 TraceCheckUtils]: 15: Hoare triple {13926#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {13926#(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:42,071 INFO L290 TraceCheckUtils]: 16: Hoare triple {13926#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {13926#(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:42,072 INFO L290 TraceCheckUtils]: 17: Hoare triple {13926#(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~nondet17#1; {13926#(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:42,072 INFO L290 TraceCheckUtils]: 18: Hoare triple {13926#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {13927#(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:42,073 INFO L290 TraceCheckUtils]: 19: Hoare triple {13927#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {13928#(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:42,073 INFO L290 TraceCheckUtils]: 20: Hoare triple {13928#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {13928#(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:42,073 INFO L290 TraceCheckUtils]: 21: Hoare triple {13928#(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~nondet17#1; {13928#(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:42,074 INFO L290 TraceCheckUtils]: 22: Hoare triple {13928#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {13928#(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:42,074 INFO L290 TraceCheckUtils]: 23: Hoare triple {13928#(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); {13928#(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:42,074 INFO L290 TraceCheckUtils]: 24: Hoare triple {13928#(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: L547-4 {13928#(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:42,075 INFO L290 TraceCheckUtils]: 25: Hoare triple {13928#(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: L552 {13929#(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:42,075 INFO L290 TraceCheckUtils]: 26: Hoare triple {13929#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {13930#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:42,076 INFO L290 TraceCheckUtils]: 27: Hoare triple {13930#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {13930#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:42,076 INFO L290 TraceCheckUtils]: 28: Hoare triple {13930#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,077 INFO L290 TraceCheckUtils]: 29: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,077 INFO L290 TraceCheckUtils]: 30: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,077 INFO L290 TraceCheckUtils]: 31: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,078 INFO L290 TraceCheckUtils]: 32: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,078 INFO L290 TraceCheckUtils]: 33: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,078 INFO L290 TraceCheckUtils]: 34: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,079 INFO L290 TraceCheckUtils]: 35: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,079 INFO L290 TraceCheckUtils]: 36: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,079 INFO L290 TraceCheckUtils]: 37: Hoare triple {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,080 INFO L290 TraceCheckUtils]: 38: Hoare triple {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,080 INFO L290 TraceCheckUtils]: 39: Hoare triple {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,081 INFO L290 TraceCheckUtils]: 40: Hoare triple {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,081 INFO L290 TraceCheckUtils]: 41: Hoare triple {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,081 INFO L290 TraceCheckUtils]: 42: Hoare triple {13932#(and (<= 1 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,082 INFO L290 TraceCheckUtils]: 43: Hoare triple {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,082 INFO L290 TraceCheckUtils]: 44: Hoare triple {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,083 INFO L290 TraceCheckUtils]: 45: Hoare triple {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,083 INFO L290 TraceCheckUtils]: 46: Hoare triple {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,083 INFO L290 TraceCheckUtils]: 47: Hoare triple {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,084 INFO L290 TraceCheckUtils]: 48: Hoare triple {13933#(and (<= 2 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {13934#(and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,084 INFO L290 TraceCheckUtils]: 49: Hoare triple {13934#(and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {13923#false} is VALID [2022-02-20 23:39:42,084 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 1 proven. 35 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:42,085 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:42,085 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1396293206] [2022-02-20 23:39:42,085 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1396293206] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:42,085 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1705809667] [2022-02-20 23:39:42,085 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 23:39:42,085 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:42,085 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:42,086 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:42,089 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:42,166 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2022-02-20 23:39:42,166 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:42,167 INFO L263 TraceCheckSpWp]: Trace formula consists of 226 conjuncts, 37 conjunts are in the unsatisfiable core [2022-02-20 23:39:42,179 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:42,180 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:42,233 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:39:42,233 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:42,679 INFO L290 TraceCheckUtils]: 0: Hoare triple {13922#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13922#true} is VALID [2022-02-20 23:39:42,679 INFO L290 TraceCheckUtils]: 1: Hoare triple {13922#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {13922#true} is VALID [2022-02-20 23:39:42,679 INFO L290 TraceCheckUtils]: 2: Hoare triple {13922#true} assume !(main_~length1~0#1 < 1); {13922#true} is VALID [2022-02-20 23:39:42,679 INFO L290 TraceCheckUtils]: 3: Hoare triple {13922#true} assume !(main_~length2~0#1 < 1); {13922#true} is VALID [2022-02-20 23:39:42,680 INFO L290 TraceCheckUtils]: 4: Hoare triple {13922#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {13950#(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:42,680 INFO L290 TraceCheckUtils]: 5: Hoare triple {13950#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {13950#(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:42,681 INFO L290 TraceCheckUtils]: 6: Hoare triple {13950#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {13950#(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:42,681 INFO L290 TraceCheckUtils]: 7: Hoare triple {13950#(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~nondet15#1; {13950#(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:42,681 INFO L290 TraceCheckUtils]: 8: Hoare triple {13950#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {13950#(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:42,682 INFO L290 TraceCheckUtils]: 9: Hoare triple {13950#(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); {13950#(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:42,682 INFO L290 TraceCheckUtils]: 10: Hoare triple {13950#(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; {13969#(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:42,682 INFO L290 TraceCheckUtils]: 11: Hoare triple {13969#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {13969#(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:42,683 INFO L290 TraceCheckUtils]: 12: Hoare triple {13969#(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~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {13969#(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:42,683 INFO L290 TraceCheckUtils]: 13: Hoare triple {13969#(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~nondet17#1; {13969#(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:42,684 INFO L290 TraceCheckUtils]: 14: Hoare triple {13969#(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~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {13982#(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:42,684 INFO L290 TraceCheckUtils]: 15: Hoare triple {13982#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {13982#(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:42,684 INFO L290 TraceCheckUtils]: 16: Hoare triple {13982#(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|))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {13982#(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:42,685 INFO L290 TraceCheckUtils]: 17: Hoare triple {13982#(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|))} havoc main_#t~nondet17#1; {13982#(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:42,685 INFO L290 TraceCheckUtils]: 18: Hoare triple {13982#(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|))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {13995#(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:42,686 INFO L290 TraceCheckUtils]: 19: Hoare triple {13995#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {13929#(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:42,686 INFO L290 TraceCheckUtils]: 20: Hoare triple {13929#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {13929#(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:42,686 INFO L290 TraceCheckUtils]: 21: Hoare triple {13929#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} havoc main_#t~nondet17#1; {13929#(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:42,687 INFO L290 TraceCheckUtils]: 22: Hoare triple {13929#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {13929#(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:42,687 INFO L290 TraceCheckUtils]: 23: Hoare triple {13929#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {13929#(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:42,687 INFO L290 TraceCheckUtils]: 24: Hoare triple {13929#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (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: L547-4 {13929#(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:42,688 INFO L290 TraceCheckUtils]: 25: Hoare triple {13929#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (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: L552 {13929#(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:42,688 INFO L290 TraceCheckUtils]: 26: Hoare triple {13929#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {13930#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:42,689 INFO L290 TraceCheckUtils]: 27: Hoare triple {13930#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {13930#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:42,689 INFO L290 TraceCheckUtils]: 28: Hoare triple {13930#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,689 INFO L290 TraceCheckUtils]: 29: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,690 INFO L290 TraceCheckUtils]: 30: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,690 INFO L290 TraceCheckUtils]: 31: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,691 INFO L290 TraceCheckUtils]: 32: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,691 INFO L290 TraceCheckUtils]: 33: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,691 INFO L290 TraceCheckUtils]: 34: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,692 INFO L290 TraceCheckUtils]: 35: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,692 INFO L290 TraceCheckUtils]: 36: Hoare triple {13931#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,692 INFO L290 TraceCheckUtils]: 37: Hoare triple {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,693 INFO L290 TraceCheckUtils]: 38: Hoare triple {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,693 INFO L290 TraceCheckUtils]: 39: Hoare triple {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,693 INFO L290 TraceCheckUtils]: 40: Hoare triple {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,694 INFO L290 TraceCheckUtils]: 41: Hoare triple {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,694 INFO L290 TraceCheckUtils]: 42: Hoare triple {14050#(and (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,695 INFO L290 TraceCheckUtils]: 43: Hoare triple {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,695 INFO L290 TraceCheckUtils]: 44: Hoare triple {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,695 INFO L290 TraceCheckUtils]: 45: Hoare triple {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume cstrcspn_#t~short7#1; {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,696 INFO L290 TraceCheckUtils]: 46: Hoare triple {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,696 INFO L290 TraceCheckUtils]: 47: Hoare triple {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,706 INFO L290 TraceCheckUtils]: 48: Hoare triple {14069#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 1)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {14088#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 2)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:39:42,707 INFO L290 TraceCheckUtils]: 49: Hoare triple {14088#(and (= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| (- 2)) 1) (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {13923#false} is VALID [2022-02-20 23:39:42,707 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:42,707 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:43,319 INFO L290 TraceCheckUtils]: 49: Hoare triple {14092#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {13923#false} is VALID [2022-02-20 23:39:43,320 INFO L290 TraceCheckUtils]: 48: Hoare triple {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {14092#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~s~0#1.offset|))} is VALID [2022-02-20 23:39:43,320 INFO L290 TraceCheckUtils]: 47: Hoare triple {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:43,321 INFO L290 TraceCheckUtils]: 46: Hoare triple {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:43,321 INFO L290 TraceCheckUtils]: 45: Hoare triple {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} assume cstrcspn_#t~short7#1; {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:43,322 INFO L290 TraceCheckUtils]: 44: Hoare triple {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:43,322 INFO L290 TraceCheckUtils]: 43: Hoare triple {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:43,323 INFO L290 TraceCheckUtils]: 42: Hoare triple {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {14096#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:39:43,323 INFO L290 TraceCheckUtils]: 41: Hoare triple {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:39:43,324 INFO L290 TraceCheckUtils]: 40: Hoare triple {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:39:43,324 INFO L290 TraceCheckUtils]: 39: Hoare triple {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} assume cstrcspn_#t~short7#1; {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:39:43,324 INFO L290 TraceCheckUtils]: 38: Hoare triple {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:39:43,325 INFO L290 TraceCheckUtils]: 37: Hoare triple {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:39:43,326 INFO L290 TraceCheckUtils]: 36: Hoare triple {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {14115#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)))} is VALID [2022-02-20 23:39:43,326 INFO L290 TraceCheckUtils]: 35: Hoare triple {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,326 INFO L290 TraceCheckUtils]: 34: Hoare triple {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,327 INFO L290 TraceCheckUtils]: 33: Hoare triple {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} assume cstrcspn_#t~short7#1; {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,327 INFO L290 TraceCheckUtils]: 32: Hoare triple {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,328 INFO L290 TraceCheckUtils]: 31: Hoare triple {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,328 INFO L290 TraceCheckUtils]: 30: Hoare triple {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,329 INFO L290 TraceCheckUtils]: 29: Hoare triple {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,329 INFO L290 TraceCheckUtils]: 28: Hoare triple {14159#(and (<= 0 (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|)) (<= (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {14134#(and (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)) (<= 0 (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,330 INFO L290 TraceCheckUtils]: 27: Hoare triple {14159#(and (<= 0 (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|)) (<= (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {14159#(and (<= 0 (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|)) (<= (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:43,330 INFO L290 TraceCheckUtils]: 26: Hoare triple {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {14159#(and (<= 0 (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|)) (<= (+ |ULTIMATE.start_cstrcspn_~s2#1.offset| 4) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))} is VALID [2022-02-20 23:39:43,331 INFO L290 TraceCheckUtils]: 25: Hoare triple {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,331 INFO L290 TraceCheckUtils]: 24: Hoare triple {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,332 INFO L290 TraceCheckUtils]: 23: Hoare triple {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,332 INFO L290 TraceCheckUtils]: 22: Hoare triple {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,333 INFO L290 TraceCheckUtils]: 21: Hoare triple {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} havoc main_#t~nondet17#1; {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,333 INFO L290 TraceCheckUtils]: 20: Hoare triple {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,334 INFO L290 TraceCheckUtils]: 19: Hoare triple {14188#(or (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))) (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~nondet17#1 && main_#t~nondet17#1 <= 127; {14166#(and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)))} is VALID [2022-02-20 23:39:43,334 INFO L290 TraceCheckUtils]: 18: Hoare triple {14192#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {14188#(or (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))) (not (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:43,335 INFO L290 TraceCheckUtils]: 17: Hoare triple {14192#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} havoc main_#t~nondet17#1; {14192#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,335 INFO L290 TraceCheckUtils]: 16: Hoare triple {14192#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {14192#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,336 INFO L290 TraceCheckUtils]: 15: Hoare triple {14192#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {14192#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,336 INFO L290 TraceCheckUtils]: 14: Hoare triple {14205#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {14192#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 2 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,337 INFO L290 TraceCheckUtils]: 13: Hoare triple {14205#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} havoc main_#t~nondet17#1; {14205#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,337 INFO L290 TraceCheckUtils]: 12: Hoare triple {14205#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {14205#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,338 INFO L290 TraceCheckUtils]: 11: Hoare triple {14205#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {14205#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,338 INFO L290 TraceCheckUtils]: 10: Hoare triple {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} main_~i~1#1 := 0; {14205#(or (<= |ULTIMATE.start_main_~length2~0#1| (+ 3 |ULTIMATE.start_main_~i~1#1|)) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,339 INFO L290 TraceCheckUtils]: 9: Hoare triple {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,339 INFO L290 TraceCheckUtils]: 8: Hoare triple {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,339 INFO L290 TraceCheckUtils]: 7: Hoare triple {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} havoc main_#t~nondet15#1; {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,340 INFO L290 TraceCheckUtils]: 6: Hoare triple {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,340 INFO L290 TraceCheckUtils]: 5: Hoare triple {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,341 INFO L290 TraceCheckUtils]: 4: Hoare triple {13922#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {14218#(or (<= |ULTIMATE.start_main_~length2~0#1| 3) (and (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|)) (<= 0 (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3))))} is VALID [2022-02-20 23:39:43,341 INFO L290 TraceCheckUtils]: 3: Hoare triple {13922#true} assume !(main_~length2~0#1 < 1); {13922#true} is VALID [2022-02-20 23:39:43,341 INFO L290 TraceCheckUtils]: 2: Hoare triple {13922#true} assume !(main_~length1~0#1 < 1); {13922#true} is VALID [2022-02-20 23:39:43,341 INFO L290 TraceCheckUtils]: 1: Hoare triple {13922#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {13922#true} is VALID [2022-02-20 23:39:43,341 INFO L290 TraceCheckUtils]: 0: Hoare triple {13922#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {13922#true} is VALID [2022-02-20 23:39:43,342 INFO L134 CoverageAnalysis]: Checked inductivity of 37 backedges. 15 proven. 21 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:43,342 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1705809667] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:43,342 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:43,342 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11, 11] total 29 [2022-02-20 23:39:43,342 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1405924756] [2022-02-20 23:39:43,342 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:43,342 INFO L78 Accepts]: Start accepts. Automaton has has 30 states, 29 states have (on average 4.551724137931035) internal successors, (132), 30 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 50 [2022-02-20 23:39:43,344 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:43,344 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 30 states, 29 states have (on average 4.551724137931035) internal successors, (132), 30 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:43,446 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:43,446 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 30 states [2022-02-20 23:39:43,446 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:43,447 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2022-02-20 23:39:43,447 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=137, Invalid=733, Unknown=0, NotChecked=0, Total=870 [2022-02-20 23:39:43,447 INFO L87 Difference]: Start difference. First operand 281 states and 323 transitions. Second operand has 30 states, 29 states have (on average 4.551724137931035) internal successors, (132), 30 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:45,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:45,209 INFO L93 Difference]: Finished difference Result 460 states and 525 transitions. [2022-02-20 23:39:45,209 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-02-20 23:39:45,209 INFO L78 Accepts]: Start accepts. Automaton has has 30 states, 29 states have (on average 4.551724137931035) internal successors, (132), 30 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 50 [2022-02-20 23:39:45,209 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:45,209 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 29 states have (on average 4.551724137931035) internal successors, (132), 30 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:45,210 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 169 transitions. [2022-02-20 23:39:45,210 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 29 states have (on average 4.551724137931035) internal successors, (132), 30 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:45,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 169 transitions. [2022-02-20 23:39:45,211 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 169 transitions. [2022-02-20 23:39:45,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 169 edges. 169 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 23:39:45,340 INFO L225 Difference]: With dead ends: 460 [2022-02-20 23:39:45,340 INFO L226 Difference]: Without dead ends: 460 [2022-02-20 23:39:45,340 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 81 SyntacticMatches, 1 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 372 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=374, Invalid=1348, Unknown=0, NotChecked=0, Total=1722 [2022-02-20 23:39:45,340 INFO L933 BasicCegarLoop]: 65 mSDtfsCounter, 417 mSDsluCounter, 571 mSDsCounter, 0 mSdLazyCounter, 861 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 417 SdHoareTripleChecker+Valid, 636 SdHoareTripleChecker+Invalid, 892 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 861 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:45,340 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [417 Valid, 636 Invalid, 892 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 861 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-02-20 23:39:45,341 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 460 states. [2022-02-20 23:39:45,344 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 460 to 364. [2022-02-20 23:39:45,344 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:45,345 INFO L82 GeneralOperation]: Start isEquivalent. First operand 460 states. Second operand has 364 states, 362 states have (on average 1.1795580110497237) internal successors, (427), 363 states have internal predecessors, (427), 0 states have call successors, (0), 0 states have call predecessors, (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,345 INFO L74 IsIncluded]: Start isIncluded. First operand 460 states. Second operand has 364 states, 362 states have (on average 1.1795580110497237) internal successors, (427), 363 states have internal predecessors, (427), 0 states have call successors, (0), 0 states have call predecessors, (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,345 INFO L87 Difference]: Start difference. First operand 460 states. Second operand has 364 states, 362 states have (on average 1.1795580110497237) internal successors, (427), 363 states have internal predecessors, (427), 0 states have call successors, (0), 0 states have call predecessors, (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,351 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:45,352 INFO L93 Difference]: Finished difference Result 460 states and 525 transitions. [2022-02-20 23:39:45,352 INFO L276 IsEmpty]: Start isEmpty. Operand 460 states and 525 transitions. [2022-02-20 23:39:45,352 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:45,352 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:45,353 INFO L74 IsIncluded]: Start isIncluded. First operand has 364 states, 362 states have (on average 1.1795580110497237) internal successors, (427), 363 states have internal predecessors, (427), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 460 states. [2022-02-20 23:39:45,353 INFO L87 Difference]: Start difference. First operand has 364 states, 362 states have (on average 1.1795580110497237) internal successors, (427), 363 states have internal predecessors, (427), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 460 states. [2022-02-20 23:39:45,359 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:45,359 INFO L93 Difference]: Finished difference Result 460 states and 525 transitions. [2022-02-20 23:39:45,359 INFO L276 IsEmpty]: Start isEmpty. Operand 460 states and 525 transitions. [2022-02-20 23:39:45,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:45,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:45,360 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:45,360 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:45,360 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 364 states, 362 states have (on average 1.1795580110497237) internal successors, (427), 363 states have internal predecessors, (427), 0 states have call successors, (0), 0 states have call predecessors, (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,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 364 states to 364 states and 427 transitions. [2022-02-20 23:39:45,364 INFO L78 Accepts]: Start accepts. Automaton has 364 states and 427 transitions. Word has length 50 [2022-02-20 23:39:45,364 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:45,364 INFO L470 AbstractCegarLoop]: Abstraction has 364 states and 427 transitions. [2022-02-20 23:39:45,364 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 30 states, 29 states have (on average 4.551724137931035) internal successors, (132), 30 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:45,364 INFO L276 IsEmpty]: Start isEmpty. Operand 364 states and 427 transitions. [2022-02-20 23:39:45,365 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-02-20 23:39:45,365 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:45,365 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 23:39:45,399 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:45,580 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,SelfDestructingSolverStorable27 [2022-02-20 23:39:45,581 INFO L402 AbstractCegarLoop]: === Iteration 29 === Targeting ULTIMATE.startErr9REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:45,581 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:45,581 INFO L85 PathProgramCache]: Analyzing trace with hash 1388988596, now seen corresponding path program 4 times [2022-02-20 23:39:45,581 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:45,581 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1498927439] [2022-02-20 23:39:45,581 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:45,581 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:45,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:45,748 INFO L290 TraceCheckUtils]: 0: Hoare triple {16016#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {16016#true} is VALID [2022-02-20 23:39:45,748 INFO L290 TraceCheckUtils]: 1: Hoare triple {16016#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {16016#true} is VALID [2022-02-20 23:39:45,748 INFO L290 TraceCheckUtils]: 2: Hoare triple {16016#true} assume !(main_~length1~0#1 < 1); {16016#true} is VALID [2022-02-20 23:39:45,748 INFO L290 TraceCheckUtils]: 3: Hoare triple {16016#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {16016#true} is VALID [2022-02-20 23:39:45,749 INFO L290 TraceCheckUtils]: 4: Hoare triple {16016#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {16018#(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:45,749 INFO L290 TraceCheckUtils]: 5: Hoare triple {16018#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {16018#(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:45,749 INFO L290 TraceCheckUtils]: 6: Hoare triple {16018#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {16018#(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:45,750 INFO L290 TraceCheckUtils]: 7: Hoare triple {16018#(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~nondet15#1; {16018#(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:45,750 INFO L290 TraceCheckUtils]: 8: Hoare triple {16018#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {16019#(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:45,751 INFO L290 TraceCheckUtils]: 9: Hoare triple {16019#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {16020#(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:45,751 INFO L290 TraceCheckUtils]: 10: Hoare triple {16020#(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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {16020#(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:45,751 INFO L290 TraceCheckUtils]: 11: Hoare triple {16020#(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~nondet15#1; {16020#(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:45,752 INFO L290 TraceCheckUtils]: 12: Hoare triple {16020#(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~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {16021#(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:45,752 INFO L290 TraceCheckUtils]: 13: Hoare triple {16021#(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); {16022#(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:45,753 INFO L290 TraceCheckUtils]: 14: Hoare triple {16022#(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; {16022#(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:45,753 INFO L290 TraceCheckUtils]: 15: Hoare triple {16022#(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); {16022#(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:45,753 INFO L290 TraceCheckUtils]: 16: Hoare triple {16022#(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: L547-4 {16023#(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:45,754 INFO L290 TraceCheckUtils]: 17: Hoare triple {16023#(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: L552 {16023#(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:45,754 INFO L290 TraceCheckUtils]: 18: Hoare triple {16023#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,755 INFO L290 TraceCheckUtils]: 19: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,758 INFO L290 TraceCheckUtils]: 20: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,758 INFO L290 TraceCheckUtils]: 21: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,759 INFO L290 TraceCheckUtils]: 22: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,759 INFO L290 TraceCheckUtils]: 23: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,759 INFO L290 TraceCheckUtils]: 24: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,760 INFO L290 TraceCheckUtils]: 25: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1; {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,760 INFO L290 TraceCheckUtils]: 26: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,760 INFO L290 TraceCheckUtils]: 27: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,761 INFO L290 TraceCheckUtils]: 28: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:39:45,761 INFO L290 TraceCheckUtils]: 29: Hoare triple {16024#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) 2) 0) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,761 INFO L290 TraceCheckUtils]: 30: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,762 INFO L290 TraceCheckUtils]: 31: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,762 INFO L290 TraceCheckUtils]: 32: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,762 INFO L290 TraceCheckUtils]: 33: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,762 INFO L290 TraceCheckUtils]: 34: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,763 INFO L290 TraceCheckUtils]: 35: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,763 INFO L290 TraceCheckUtils]: 36: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} assume !cstrcspn_#t~short7#1; {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,763 INFO L290 TraceCheckUtils]: 37: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,763 INFO L290 TraceCheckUtils]: 38: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,764 INFO L290 TraceCheckUtils]: 39: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:45,764 INFO L290 TraceCheckUtils]: 40: Hoare triple {16025#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1)) 0)} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16026#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} is VALID [2022-02-20 23:39:45,764 INFO L290 TraceCheckUtils]: 41: Hoare triple {16026#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16027#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 42: Hoare triple {16027#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 43: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 44: Hoare triple {16017#false} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 45: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 46: Hoare triple {16017#false} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 47: Hoare triple {16017#false} assume !cstrcspn_#t~short7#1; {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 48: Hoare triple {16017#false} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 49: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 50: Hoare triple {16017#false} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 51: Hoare triple {16017#false} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L290 TraceCheckUtils]: 52: Hoare triple {16017#false} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {16017#false} is VALID [2022-02-20 23:39:45,765 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 21 proven. 21 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:45,765 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:45,765 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1498927439] [2022-02-20 23:39:45,765 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1498927439] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:45,766 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1538951979] [2022-02-20 23:39:45,766 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-02-20 23:39:45,766 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:45,766 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:45,767 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:45,767 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:45,841 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-02-20 23:39:45,841 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:45,842 INFO L263 TraceCheckSpWp]: Trace formula consists of 227 conjuncts, 42 conjunts are in the unsatisfiable core [2022-02-20 23:39:45,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:45,857 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:45,916 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:39:45,916 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:45,943 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:46,236 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 13 treesize of output 9 [2022-02-20 23:39:46,374 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 1 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 16 treesize of output 18 [2022-02-20 23:39:48,206 INFO L173 IndexEqualityManager]: detected equality via solver [2022-02-20 23:39:48,206 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 1 new quantified variables, introduced 0 case distinctions, treesize of input 17 treesize of output 7 [2022-02-20 23:39:48,240 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 11 treesize of output 7 [2022-02-20 23:39:48,259 INFO L290 TraceCheckUtils]: 0: Hoare triple {16016#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {16016#true} is VALID [2022-02-20 23:39:48,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {16016#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {16016#true} is VALID [2022-02-20 23:39:48,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {16016#true} assume !(main_~length1~0#1 < 1); {16016#true} is VALID [2022-02-20 23:39:48,259 INFO L290 TraceCheckUtils]: 3: Hoare triple {16016#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {16016#true} is VALID [2022-02-20 23:39:48,260 INFO L290 TraceCheckUtils]: 4: Hoare triple {16016#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {16043#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:48,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {16043#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {16043#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:48,261 INFO L290 TraceCheckUtils]: 6: Hoare triple {16043#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {16043#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:48,261 INFO L290 TraceCheckUtils]: 7: Hoare triple {16043#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet15#1; {16043#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:48,261 INFO L290 TraceCheckUtils]: 8: Hoare triple {16043#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= |ULTIMATE.start_main_~i~0#1| 0) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {16056#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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:48,262 INFO L290 TraceCheckUtils]: 9: Hoare triple {16056#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~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~nondet15#1 && main_#t~nondet15#1 <= 127; {16056#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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:48,262 INFO L290 TraceCheckUtils]: 10: Hoare triple {16056#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {16056#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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:48,263 INFO L290 TraceCheckUtils]: 11: Hoare triple {16056#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} havoc main_#t~nondet15#1; {16056#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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:48,263 INFO L290 TraceCheckUtils]: 12: Hoare triple {16056#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~0#1| 1))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {16069#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:39:48,264 INFO L290 TraceCheckUtils]: 13: Hoare triple {16069#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~i~0#1| 2) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {16073#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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:48,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {16073#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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; {16073#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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:48,264 INFO L290 TraceCheckUtils]: 15: Hoare triple {16073#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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); {16073#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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:48,265 INFO L290 TraceCheckUtils]: 16: Hoare triple {16073#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |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: L547-4 {16083#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))))} is VALID [2022-02-20 23:39:48,266 INFO L290 TraceCheckUtils]: 17: Hoare triple {16083#(and (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {16087#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0)))} is VALID [2022-02-20 23:39:48,267 INFO L290 TraceCheckUtils]: 18: Hoare triple {16087#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {16091#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0)))} is VALID [2022-02-20 23:39:48,267 INFO L290 TraceCheckUtils]: 19: Hoare triple {16091#(exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,268 INFO L290 TraceCheckUtils]: 20: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,269 INFO L290 TraceCheckUtils]: 21: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,269 INFO L290 TraceCheckUtils]: 22: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,270 INFO L290 TraceCheckUtils]: 23: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,270 INFO L290 TraceCheckUtils]: 24: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,271 INFO L290 TraceCheckUtils]: 25: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,272 INFO L290 TraceCheckUtils]: 26: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,272 INFO L290 TraceCheckUtils]: 27: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,273 INFO L290 TraceCheckUtils]: 28: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,274 INFO L290 TraceCheckUtils]: 29: Hoare triple {16095#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,274 INFO L290 TraceCheckUtils]: 30: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,275 INFO L290 TraceCheckUtils]: 31: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,275 INFO L290 TraceCheckUtils]: 32: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,276 INFO L290 TraceCheckUtils]: 33: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,277 INFO L290 TraceCheckUtils]: 34: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,277 INFO L290 TraceCheckUtils]: 35: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,278 INFO L290 TraceCheckUtils]: 36: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,278 INFO L290 TraceCheckUtils]: 37: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,279 INFO L290 TraceCheckUtils]: 38: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,280 INFO L290 TraceCheckUtils]: 39: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,280 INFO L290 TraceCheckUtils]: 40: Hoare triple {16126#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16160#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:39:48,287 INFO L290 TraceCheckUtils]: 41: Hoare triple {16160#(and (exists ((|ULTIMATE.start_main_~length1~0#1| Int)) (and (<= (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_main_~length1~0#1|) (<= |ULTIMATE.start_main_~length1~0#1| 3) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~length1~0#1|)) 0))) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16027#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 42: Hoare triple {16027#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 43: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 44: Hoare triple {16017#false} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 45: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 46: Hoare triple {16017#false} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 47: Hoare triple {16017#false} assume !cstrcspn_#t~short7#1; {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 48: Hoare triple {16017#false} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 49: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 50: Hoare triple {16017#false} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 51: Hoare triple {16017#false} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L290 TraceCheckUtils]: 52: Hoare triple {16017#false} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {16017#false} is VALID [2022-02-20 23:39:48,289 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 34 proven. 8 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:48,290 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:39:50,007 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:39:50,008 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 1 case distinctions, treesize of input 21 treesize of output 22 [2022-02-20 23:39:50,032 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:39:50,033 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 33 treesize of output 33 [2022-02-20 23:39:50,058 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 9 treesize of output 7 [2022-02-20 23:39:50,704 INFO L290 TraceCheckUtils]: 52: Hoare triple {16017#false} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {16017#false} is VALID [2022-02-20 23:39:50,704 INFO L290 TraceCheckUtils]: 51: Hoare triple {16017#false} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16017#false} is VALID [2022-02-20 23:39:50,704 INFO L290 TraceCheckUtils]: 50: Hoare triple {16017#false} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16017#false} is VALID [2022-02-20 23:39:50,704 INFO L290 TraceCheckUtils]: 49: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16017#false} is VALID [2022-02-20 23:39:50,704 INFO L290 TraceCheckUtils]: 48: Hoare triple {16017#false} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16017#false} is VALID [2022-02-20 23:39:50,704 INFO L290 TraceCheckUtils]: 47: Hoare triple {16017#false} assume !cstrcspn_#t~short7#1; {16017#false} is VALID [2022-02-20 23:39:50,704 INFO L290 TraceCheckUtils]: 46: Hoare triple {16017#false} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16017#false} is VALID [2022-02-20 23:39:50,704 INFO L290 TraceCheckUtils]: 45: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16017#false} is VALID [2022-02-20 23:39:50,705 INFO L290 TraceCheckUtils]: 44: Hoare triple {16017#false} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16017#false} is VALID [2022-02-20 23:39:50,705 INFO L290 TraceCheckUtils]: 43: Hoare triple {16017#false} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16017#false} is VALID [2022-02-20 23:39:50,705 INFO L290 TraceCheckUtils]: 42: Hoare triple {16027#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16017#false} is VALID [2022-02-20 23:39:50,705 INFO L290 TraceCheckUtils]: 41: Hoare triple {16230#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16027#(= |ULTIMATE.start_cstrcspn_#t~mem3#1| 0)} is VALID [2022-02-20 23:39:50,707 INFO L290 TraceCheckUtils]: 40: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16230#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))))} is VALID [2022-02-20 23:39:50,708 INFO L290 TraceCheckUtils]: 39: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,708 INFO L290 TraceCheckUtils]: 38: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,709 INFO L290 TraceCheckUtils]: 37: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,709 INFO L290 TraceCheckUtils]: 36: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} assume !cstrcspn_#t~short7#1; {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,709 INFO L290 TraceCheckUtils]: 35: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,710 INFO L290 TraceCheckUtils]: 34: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,710 INFO L290 TraceCheckUtils]: 33: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,711 INFO L290 TraceCheckUtils]: 32: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,711 INFO L290 TraceCheckUtils]: 31: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,712 INFO L290 TraceCheckUtils]: 30: Hoare triple {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,712 INFO L290 TraceCheckUtils]: 29: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {16234#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,713 INFO L290 TraceCheckUtils]: 28: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,713 INFO L290 TraceCheckUtils]: 27: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,714 INFO L290 TraceCheckUtils]: 26: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,714 INFO L290 TraceCheckUtils]: 25: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} assume !cstrcspn_#t~short7#1; {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,714 INFO L290 TraceCheckUtils]: 24: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,715 INFO L290 TraceCheckUtils]: 23: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,715 INFO L290 TraceCheckUtils]: 22: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,716 INFO L290 TraceCheckUtils]: 21: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,716 INFO L290 TraceCheckUtils]: 20: Hoare triple {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,717 INFO L290 TraceCheckUtils]: 19: Hoare triple {16299#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 2)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {16268#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,717 INFO L290 TraceCheckUtils]: 18: Hoare triple {16303#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 2) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {16299#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 2)))} is VALID [2022-02-20 23:39:50,718 INFO L290 TraceCheckUtils]: 17: Hoare triple {16307#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int) (v_ArrVal_437 (Array Int Int))) (or (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 2) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base| v_ArrVal_437) |ULTIMATE.start_main_~nondetString1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 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: L552 {16303#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 2) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,719 INFO L290 TraceCheckUtils]: 16: Hoare triple {16311#(and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3)))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {16307#(forall ((|v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| Int) (v_ArrVal_437 (Array Int Int))) (or (< |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 2) (= (select (select (store |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base| v_ArrVal_437) |ULTIMATE.start_main_~nondetString1~0#1.base|) |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~sc1~0#1.offset_32| 1) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|)))))} is VALID [2022-02-20 23:39:50,719 INFO L290 TraceCheckUtils]: 15: Hoare triple {16311#(and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3)))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {16311#(and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3)))} is VALID [2022-02-20 23:39:50,720 INFO L290 TraceCheckUtils]: 14: Hoare triple {16311#(and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3)))} main_~i~1#1 := 0; {16311#(and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3)))} is VALID [2022-02-20 23:39:50,720 INFO L290 TraceCheckUtils]: 13: Hoare triple {16321#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {16311#(and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3)))} is VALID [2022-02-20 23:39:50,721 INFO L290 TraceCheckUtils]: 12: Hoare triple {16325#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {16321#(or (< (+ |ULTIMATE.start_main_~i~0#1| 1) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,722 INFO L290 TraceCheckUtils]: 11: Hoare triple {16325#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} havoc main_#t~nondet15#1; {16325#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,722 INFO L290 TraceCheckUtils]: 10: Hoare triple {16325#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {16325#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,723 INFO L290 TraceCheckUtils]: 9: Hoare triple {16325#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {16325#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,724 INFO L290 TraceCheckUtils]: 8: Hoare triple {16338#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {16325#(or (< (+ 2 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,727 INFO L290 TraceCheckUtils]: 7: Hoare triple {16338#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} havoc main_#t~nondet15#1; {16338#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,728 INFO L290 TraceCheckUtils]: 6: Hoare triple {16338#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {16338#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,729 INFO L290 TraceCheckUtils]: 5: Hoare triple {16338#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {16338#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,730 INFO L290 TraceCheckUtils]: 4: Hoare triple {16016#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {16338#(or (< (+ 3 |ULTIMATE.start_main_~i~0#1|) |ULTIMATE.start_main_~length1~0#1|) (and (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|) 3)) (or (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3) (<= (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| |ULTIMATE.start_main_~length1~0#1|))) (or (not (= |ULTIMATE.start_main_~nondetString2~0#1.base| |ULTIMATE.start_main_~nondetString1~0#1.base|)) (< (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|) 3))))} is VALID [2022-02-20 23:39:50,730 INFO L290 TraceCheckUtils]: 3: Hoare triple {16016#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {16016#true} is VALID [2022-02-20 23:39:50,730 INFO L290 TraceCheckUtils]: 2: Hoare triple {16016#true} assume !(main_~length1~0#1 < 1); {16016#true} is VALID [2022-02-20 23:39:50,730 INFO L290 TraceCheckUtils]: 1: Hoare triple {16016#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {16016#true} is VALID [2022-02-20 23:39:50,730 INFO L290 TraceCheckUtils]: 0: Hoare triple {16016#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {16016#true} is VALID [2022-02-20 23:39:50,730 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 31 proven. 11 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:39:50,731 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1538951979] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:39:50,731 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:39:50,731 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13, 13] total 32 [2022-02-20 23:39:50,731 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [31679284] [2022-02-20 23:39:50,731 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:39:50,731 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 4.03125) internal successors, (129), 32 states have internal predecessors, (129), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 23:39:50,732 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:39:50,732 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 32 states, 32 states have (on average 4.03125) internal successors, (129), 32 states have internal predecessors, (129), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:50,829 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:50,829 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2022-02-20 23:39:50,829 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:39:50,829 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2022-02-20 23:39:50,830 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=104, Invalid=878, Unknown=10, NotChecked=0, Total=992 [2022-02-20 23:39:50,830 INFO L87 Difference]: Start difference. First operand 364 states and 427 transitions. Second operand has 32 states, 32 states have (on average 4.03125) internal successors, (129), 32 states have internal predecessors, (129), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:51,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:51,819 INFO L93 Difference]: Finished difference Result 508 states and 579 transitions. [2022-02-20 23:39:51,819 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-02-20 23:39:51,819 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 4.03125) internal successors, (129), 32 states have internal predecessors, (129), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 53 [2022-02-20 23:39:51,819 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:39:51,819 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 4.03125) internal successors, (129), 32 states have internal predecessors, (129), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:51,819 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 105 transitions. [2022-02-20 23:39:51,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 4.03125) internal successors, (129), 32 states have internal predecessors, (129), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:51,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 105 transitions. [2022-02-20 23:39:51,820 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 105 transitions. [2022-02-20 23:39:51,900 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:51,907 INFO L225 Difference]: With dead ends: 508 [2022-02-20 23:39:51,907 INFO L226 Difference]: Without dead ends: 461 [2022-02-20 23:39:51,907 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 134 GetRequests, 89 SyntacticMatches, 2 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 279 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=235, Invalid=1735, Unknown=10, NotChecked=0, Total=1980 [2022-02-20 23:39:51,907 INFO L933 BasicCegarLoop]: 36 mSDtfsCounter, 108 mSDsluCounter, 705 mSDsCounter, 0 mSdLazyCounter, 198 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 108 SdHoareTripleChecker+Valid, 741 SdHoareTripleChecker+Invalid, 255 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 198 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 51 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 23:39:51,908 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [108 Valid, 741 Invalid, 255 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 198 Invalid, 0 Unknown, 51 Unchecked, 0.1s Time] [2022-02-20 23:39:51,908 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 461 states. [2022-02-20 23:39:51,915 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 461 to 449. [2022-02-20 23:39:51,916 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:39:51,916 INFO L82 GeneralOperation]: Start isEquivalent. First operand 461 states. Second operand has 449 states, 447 states have (on average 1.1610738255033557) internal successors, (519), 448 states have internal predecessors, (519), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:51,917 INFO L74 IsIncluded]: Start isIncluded. First operand 461 states. Second operand has 449 states, 447 states have (on average 1.1610738255033557) internal successors, (519), 448 states have internal predecessors, (519), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:51,917 INFO L87 Difference]: Start difference. First operand 461 states. Second operand has 449 states, 447 states have (on average 1.1610738255033557) internal successors, (519), 448 states have internal predecessors, (519), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:51,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:51,931 INFO L93 Difference]: Finished difference Result 461 states and 531 transitions. [2022-02-20 23:39:51,931 INFO L276 IsEmpty]: Start isEmpty. Operand 461 states and 531 transitions. [2022-02-20 23:39:51,932 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:51,932 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:51,932 INFO L74 IsIncluded]: Start isIncluded. First operand has 449 states, 447 states have (on average 1.1610738255033557) internal successors, (519), 448 states have internal predecessors, (519), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 461 states. [2022-02-20 23:39:51,933 INFO L87 Difference]: Start difference. First operand has 449 states, 447 states have (on average 1.1610738255033557) internal successors, (519), 448 states have internal predecessors, (519), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 461 states. [2022-02-20 23:39:51,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:39:51,943 INFO L93 Difference]: Finished difference Result 461 states and 531 transitions. [2022-02-20 23:39:51,943 INFO L276 IsEmpty]: Start isEmpty. Operand 461 states and 531 transitions. [2022-02-20 23:39:51,943 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:39:51,944 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:39:51,944 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:39:51,944 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:39:51,944 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 449 states, 447 states have (on average 1.1610738255033557) internal successors, (519), 448 states have internal predecessors, (519), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:51,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 449 states to 449 states and 519 transitions. [2022-02-20 23:39:51,953 INFO L78 Accepts]: Start accepts. Automaton has 449 states and 519 transitions. Word has length 53 [2022-02-20 23:39:51,953 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:39:51,953 INFO L470 AbstractCegarLoop]: Abstraction has 449 states and 519 transitions. [2022-02-20 23:39:51,953 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 32 states, 32 states have (on average 4.03125) internal successors, (129), 32 states have internal predecessors, (129), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 23:39:51,954 INFO L276 IsEmpty]: Start isEmpty. Operand 449 states and 519 transitions. [2022-02-20 23:39:51,954 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 57 [2022-02-20 23:39:51,954 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:39:51,955 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 3, 3, 3, 3, 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:51,983 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:39:52,171 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-02-20 23:39:52,171 INFO L402 AbstractCegarLoop]: === Iteration 30 === Targeting ULTIMATE.startErr13REQUIRES_VIOLATION === [ULTIMATE.startErr0REQUIRES_VIOLATION, ULTIMATE.startErr1REQUIRES_VIOLATION, ULTIMATE.startErr2REQUIRES_VIOLATION, ULTIMATE.startErr3REQUIRES_VIOLATION (and 15 more)] === [2022-02-20 23:39:52,172 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:39:52,172 INFO L85 PathProgramCache]: Analyzing trace with hash 509273480, now seen corresponding path program 6 times [2022-02-20 23:39:52,172 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:39:52,172 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1056217605] [2022-02-20 23:39:52,172 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:39:52,172 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:39:52,198 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:52,346 INFO L290 TraceCheckUtils]: 0: Hoare triple {18271#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {18271#true} is VALID [2022-02-20 23:39:52,346 INFO L290 TraceCheckUtils]: 1: Hoare triple {18271#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {18271#true} is VALID [2022-02-20 23:39:52,346 INFO L290 TraceCheckUtils]: 2: Hoare triple {18271#true} assume !(main_~length1~0#1 < 1); {18271#true} is VALID [2022-02-20 23:39:52,346 INFO L290 TraceCheckUtils]: 3: Hoare triple {18271#true} assume !(main_~length2~0#1 < 1); {18271#true} is VALID [2022-02-20 23:39:52,359 INFO L290 TraceCheckUtils]: 4: Hoare triple {18271#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:52,360 INFO L290 TraceCheckUtils]: 5: Hoare triple {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:52,360 INFO L290 TraceCheckUtils]: 6: Hoare triple {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:52,361 INFO L290 TraceCheckUtils]: 7: Hoare triple {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} havoc main_#t~nondet15#1; {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:52,361 INFO L290 TraceCheckUtils]: 8: Hoare triple {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:52,361 INFO L290 TraceCheckUtils]: 9: Hoare triple {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} is VALID [2022-02-20 23:39:52,362 INFO L290 TraceCheckUtils]: 10: Hoare triple {18273#(= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0)} main_~i~1#1 := 0; {18274#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:52,362 INFO L290 TraceCheckUtils]: 11: Hoare triple {18274#(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~nondet17#1 && main_#t~nondet17#1 <= 127; {18274#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:52,362 INFO L290 TraceCheckUtils]: 12: Hoare triple {18274#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18274#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:52,363 INFO L290 TraceCheckUtils]: 13: Hoare triple {18274#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} havoc main_#t~nondet17#1; {18274#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:52,363 INFO L290 TraceCheckUtils]: 14: Hoare triple {18274#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= |ULTIMATE.start_main_~i~1#1| 0))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18275#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:39:52,363 INFO L290 TraceCheckUtils]: 15: Hoare triple {18275#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {18275#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:39:52,364 INFO L290 TraceCheckUtils]: 16: Hoare triple {18275#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18275#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:39:52,364 INFO L290 TraceCheckUtils]: 17: Hoare triple {18275#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} havoc main_#t~nondet17#1; {18275#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:39:52,365 INFO L290 TraceCheckUtils]: 18: Hoare triple {18275#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 1) (<= 1 |ULTIMATE.start_main_~i~1#1|))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18276#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} is VALID [2022-02-20 23:39:52,365 INFO L290 TraceCheckUtils]: 19: Hoare triple {18276#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= 2 |ULTIMATE.start_main_~i~1#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {18277#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2))} is VALID [2022-02-20 23:39:52,366 INFO L290 TraceCheckUtils]: 20: Hoare triple {18277#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18277#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2))} is VALID [2022-02-20 23:39:52,366 INFO L290 TraceCheckUtils]: 21: Hoare triple {18277#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2))} havoc main_#t~nondet17#1; {18277#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2))} is VALID [2022-02-20 23:39:52,367 INFO L290 TraceCheckUtils]: 22: Hoare triple {18277#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 2))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18278#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:39:52,367 INFO L290 TraceCheckUtils]: 23: Hoare triple {18278#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (<= |ULTIMATE.start_main_~i~1#1| 3))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {18279#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 4) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,367 INFO L290 TraceCheckUtils]: 24: Hoare triple {18279#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 4) (= |ULTIMATE.start_main_~nondetString2~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: L547-4 {18279#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 4) (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,368 INFO L290 TraceCheckUtils]: 25: Hoare triple {18279#(and (<= 4 |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~length2~0#1| 4) (= |ULTIMATE.start_main_~nondetString2~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: L552 {18280#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)) 0))} is VALID [2022-02-20 23:39:52,369 INFO L290 TraceCheckUtils]: 26: Hoare triple {18280#(and (= |ULTIMATE.start_main_~nondetString2~0#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)) 0))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {18281#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 3) 0))} is VALID [2022-02-20 23:39:52,369 INFO L290 TraceCheckUtils]: 27: Hoare triple {18281#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 3) 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {18281#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 3) 0))} is VALID [2022-02-20 23:39:52,369 INFO L290 TraceCheckUtils]: 28: Hoare triple {18281#(and (= |ULTIMATE.start_cstrcspn_~s2#1.offset| 0) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) 3) 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,370 INFO L290 TraceCheckUtils]: 29: Hoare triple {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,370 INFO L290 TraceCheckUtils]: 30: Hoare triple {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,371 INFO L290 TraceCheckUtils]: 31: Hoare triple {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,371 INFO L290 TraceCheckUtils]: 32: Hoare triple {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,371 INFO L290 TraceCheckUtils]: 33: Hoare triple {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume cstrcspn_#t~short7#1; {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,372 INFO L290 TraceCheckUtils]: 34: Hoare triple {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,372 INFO L290 TraceCheckUtils]: 35: Hoare triple {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} is VALID [2022-02-20 23:39:52,373 INFO L290 TraceCheckUtils]: 36: Hoare triple {18282#(and (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 3) 0) (= |ULTIMATE.start_cstrcspn_~s~0#1.offset| 0))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:39:52,373 INFO L290 TraceCheckUtils]: 37: Hoare triple {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:39:52,374 INFO L290 TraceCheckUtils]: 38: Hoare triple {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:39:52,374 INFO L290 TraceCheckUtils]: 39: Hoare triple {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} assume cstrcspn_#t~short7#1; {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:39:52,375 INFO L290 TraceCheckUtils]: 40: Hoare triple {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:39:52,375 INFO L290 TraceCheckUtils]: 41: Hoare triple {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} is VALID [2022-02-20 23:39:52,376 INFO L290 TraceCheckUtils]: 42: Hoare triple {18283#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) 0)} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:52,376 INFO L290 TraceCheckUtils]: 43: Hoare triple {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:52,376 INFO L290 TraceCheckUtils]: 44: Hoare triple {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:52,376 INFO L290 TraceCheckUtils]: 45: Hoare triple {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} assume cstrcspn_#t~short7#1; {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:52,377 INFO L290 TraceCheckUtils]: 46: Hoare triple {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:52,377 INFO L290 TraceCheckUtils]: 47: Hoare triple {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} is VALID [2022-02-20 23:39:52,378 INFO L290 TraceCheckUtils]: 48: Hoare triple {18284#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)) 0)} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18285#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} is VALID [2022-02-20 23:39:52,378 INFO L290 TraceCheckUtils]: 49: Hoare triple {18285#(= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0)} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18286#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} is VALID [2022-02-20 23:39:52,378 INFO L290 TraceCheckUtils]: 50: Hoare triple {18286#(= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0)} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18287#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} is VALID [2022-02-20 23:39:52,379 INFO L290 TraceCheckUtils]: 51: Hoare triple {18287#(not |ULTIMATE.start_cstrcspn_#t~short7#1|)} assume cstrcspn_#t~short7#1; {18272#false} is VALID [2022-02-20 23:39:52,379 INFO L290 TraceCheckUtils]: 52: Hoare triple {18272#false} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18272#false} is VALID [2022-02-20 23:39:52,379 INFO L290 TraceCheckUtils]: 53: Hoare triple {18272#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18272#false} is VALID [2022-02-20 23:39:52,379 INFO L290 TraceCheckUtils]: 54: Hoare triple {18272#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18272#false} is VALID [2022-02-20 23:39:52,379 INFO L290 TraceCheckUtils]: 55: Hoare triple {18272#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {18272#false} is VALID [2022-02-20 23:39:52,379 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 13 proven. 42 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:39:52,380 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:39:52,380 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1056217605] [2022-02-20 23:39:52,380 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1056217605] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:39:52,380 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [973845141] [2022-02-20 23:39:52,380 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-02-20 23:39:52,380 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:39:52,380 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:39:52,396 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:39:52,397 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:39:52,493 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-02-20 23:39:52,493 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:39:52,494 INFO L263 TraceCheckSpWp]: Trace formula consists of 246 conjuncts, 38 conjunts are in the unsatisfiable core [2022-02-20 23:39:52,509 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:39:52,510 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:39:52,577 INFO L356 Elim1Store]: treesize reduction 11, result has 45.0 percent of original size [2022-02-20 23:39:52,577 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:52,894 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:57,597 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 23:39:57,597 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 18 treesize of output 18 [2022-02-20 23:39:57,865 INFO L290 TraceCheckUtils]: 0: Hoare triple {18271#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {18271#true} is VALID [2022-02-20 23:39:57,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {18271#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {18271#true} is VALID [2022-02-20 23:39:57,865 INFO L290 TraceCheckUtils]: 2: Hoare triple {18271#true} assume !(main_~length1~0#1 < 1); {18271#true} is VALID [2022-02-20 23:39:57,865 INFO L290 TraceCheckUtils]: 3: Hoare triple {18271#true} assume !(main_~length2~0#1 < 1); {18271#true} is VALID [2022-02-20 23:39:57,866 INFO L290 TraceCheckUtils]: 4: Hoare triple {18271#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,866 INFO L290 TraceCheckUtils]: 5: Hoare triple {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,867 INFO L290 TraceCheckUtils]: 6: Hoare triple {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,867 INFO L290 TraceCheckUtils]: 7: Hoare triple {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet15#1; {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,867 INFO L290 TraceCheckUtils]: 8: Hoare triple {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,868 INFO L290 TraceCheckUtils]: 9: Hoare triple {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,868 INFO L290 TraceCheckUtils]: 10: Hoare triple {18303#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} main_~i~1#1 := 0; {18322#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:57,868 INFO L290 TraceCheckUtils]: 11: Hoare triple {18322#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {18322#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:57,869 INFO L290 TraceCheckUtils]: 12: Hoare triple {18322#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18322#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:57,869 INFO L290 TraceCheckUtils]: 13: Hoare triple {18322#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} havoc main_#t~nondet17#1; {18322#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} is VALID [2022-02-20 23:39:57,870 INFO L290 TraceCheckUtils]: 14: Hoare triple {18322#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 0))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18335#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:39:57,870 INFO L290 TraceCheckUtils]: 15: Hoare triple {18335#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {18335#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:39:57,870 INFO L290 TraceCheckUtils]: 16: Hoare triple {18335#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18335#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:39:57,871 INFO L290 TraceCheckUtils]: 17: Hoare triple {18335#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} havoc main_#t~nondet17#1; {18335#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} is VALID [2022-02-20 23:39:57,871 INFO L290 TraceCheckUtils]: 18: Hoare triple {18335#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 1))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18348#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,872 INFO L290 TraceCheckUtils]: 19: Hoare triple {18348#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {18348#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,872 INFO L290 TraceCheckUtils]: 20: Hoare triple {18348#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18348#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,872 INFO L290 TraceCheckUtils]: 21: Hoare triple {18348#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet17#1; {18348#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,873 INFO L290 TraceCheckUtils]: 22: Hoare triple {18348#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~i~1#1| 2) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18361#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 3))} is VALID [2022-02-20 23:39:57,873 INFO L290 TraceCheckUtils]: 23: Hoare triple {18361#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~i~1#1| 3))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {18365#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,874 INFO L290 TraceCheckUtils]: 24: Hoare triple {18365#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |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: L547-4 {18365#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:39:57,874 INFO L290 TraceCheckUtils]: 25: Hoare triple {18365#(and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |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: L552 {18372#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (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) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))))} is VALID [2022-02-20 23:39:57,904 INFO L290 TraceCheckUtils]: 26: Hoare triple {18372#(and (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (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) (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) |ULTIMATE.start_main_~length2~0#1|))))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {18376#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s2#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0)))} is VALID [2022-02-20 23:39:57,918 INFO L290 TraceCheckUtils]: 27: Hoare triple {18376#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s2#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0)))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {18376#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s2#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0)))} is VALID [2022-02-20 23:39:57,937 INFO L290 TraceCheckUtils]: 28: Hoare triple {18376#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s2#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0)))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:58,004 INFO L290 TraceCheckUtils]: 29: Hoare triple {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:58,005 INFO L290 TraceCheckUtils]: 30: Hoare triple {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:58,011 INFO L290 TraceCheckUtils]: 31: Hoare triple {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:39:58,012 INFO L290 TraceCheckUtils]: 32: Hoare triple {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:00,020 WARN L290 TraceCheckUtils]: 33: Hoare triple {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} assume cstrcspn_#t~short7#1; {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} is UNKNOWN [2022-02-20 23:40:00,022 INFO L290 TraceCheckUtils]: 34: Hoare triple {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:00,031 INFO L290 TraceCheckUtils]: 35: Hoare triple {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} is VALID [2022-02-20 23:40:00,035 INFO L290 TraceCheckUtils]: 36: Hoare triple {18383#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (<= |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,036 INFO L290 TraceCheckUtils]: 37: Hoare triple {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,036 INFO L290 TraceCheckUtils]: 38: Hoare triple {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,037 INFO L290 TraceCheckUtils]: 39: Hoare triple {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} assume cstrcspn_#t~short7#1; {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,041 INFO L290 TraceCheckUtils]: 40: Hoare triple {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,042 INFO L290 TraceCheckUtils]: 41: Hoare triple {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,083 INFO L290 TraceCheckUtils]: 42: Hoare triple {18408#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 1) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,086 INFO L290 TraceCheckUtils]: 43: Hoare triple {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,124 INFO L290 TraceCheckUtils]: 44: Hoare triple {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,125 INFO L290 TraceCheckUtils]: 45: Hoare triple {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} assume cstrcspn_#t~short7#1; {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,128 INFO L290 TraceCheckUtils]: 46: Hoare triple {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,129 INFO L290 TraceCheckUtils]: 47: Hoare triple {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,129 INFO L290 TraceCheckUtils]: 48: Hoare triple {18427#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 2) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18446#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} is VALID [2022-02-20 23:40:00,130 INFO L290 TraceCheckUtils]: 49: Hoare triple {18446#(exists ((|ULTIMATE.start_main_~nondetString2~0#1.offset| Int) (|ULTIMATE.start_main_~length2~0#1| Int)) (and (<= |ULTIMATE.start_main_~length2~0#1| 4) (<= 0 |ULTIMATE.start_main_~nondetString2~0#1.offset|) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ (- 1) |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) 0) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_main_~length2~0#1|) (<= (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3) |ULTIMATE.start_cstrcspn_~s~0#1.offset|)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18450#(or (and (= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0) (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4)) (and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4) (< (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1))))} is VALID [2022-02-20 23:40:00,131 INFO L290 TraceCheckUtils]: 50: Hoare triple {18450#(or (and (= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0) (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4)) (and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4) (< (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1))))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18454#(or (and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4) (< (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1))) (and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (not |ULTIMATE.start_cstrcspn_#t~short7#1|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4)))} is VALID [2022-02-20 23:40:00,131 INFO L290 TraceCheckUtils]: 51: Hoare triple {18454#(or (and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4) (< (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1))) (and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (not |ULTIMATE.start_cstrcspn_#t~short7#1|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4)))} assume cstrcspn_#t~short7#1; {18458#(and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4) (< (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} is VALID [2022-02-20 23:40:00,131 INFO L290 TraceCheckUtils]: 52: Hoare triple {18458#(and (<= 3 |ULTIMATE.start_cstrcspn_~s~0#1.offset|) (<= (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) 4) (< (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|) (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18272#false} is VALID [2022-02-20 23:40:00,131 INFO L290 TraceCheckUtils]: 53: Hoare triple {18272#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18272#false} is VALID [2022-02-20 23:40:00,132 INFO L290 TraceCheckUtils]: 54: Hoare triple {18272#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18272#false} is VALID [2022-02-20 23:40:00,132 INFO L290 TraceCheckUtils]: 55: Hoare triple {18272#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {18272#false} is VALID [2022-02-20 23:40:00,132 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 31 proven. 24 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:00,132 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 23:40:02,121 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 13 treesize of output 11 [2022-02-20 23:40:02,138 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 20 treesize of output 18 [2022-02-20 23:40:02,798 INFO L290 TraceCheckUtils]: 55: Hoare triple {18272#false} assume !(1 + cstrcspn_~s~0#1.offset <= #length[cstrcspn_~s~0#1.base] && 0 <= cstrcspn_~s~0#1.offset); {18272#false} is VALID [2022-02-20 23:40:02,798 INFO L290 TraceCheckUtils]: 54: Hoare triple {18272#false} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18272#false} is VALID [2022-02-20 23:40:02,798 INFO L290 TraceCheckUtils]: 53: Hoare triple {18272#false} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18272#false} is VALID [2022-02-20 23:40:02,798 INFO L290 TraceCheckUtils]: 52: Hoare triple {18480#(not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18272#false} is VALID [2022-02-20 23:40:02,799 INFO L290 TraceCheckUtils]: 51: Hoare triple {18484#(or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (not |ULTIMATE.start_cstrcspn_#t~short7#1|))} assume cstrcspn_#t~short7#1; {18480#(not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|)))} is VALID [2022-02-20 23:40:02,799 INFO L290 TraceCheckUtils]: 50: Hoare triple {18488#(or (= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18484#(or (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (not |ULTIMATE.start_cstrcspn_#t~short7#1|))} is VALID [2022-02-20 23:40:02,799 INFO L290 TraceCheckUtils]: 49: Hoare triple {18492#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18488#(or (= |ULTIMATE.start_cstrcspn_#t~mem5#1| 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))))} is VALID [2022-02-20 23:40:02,800 INFO L290 TraceCheckUtils]: 48: Hoare triple {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18492#(or (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |ULTIMATE.start_cstrcspn_~s~0#1.offset|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))))} is VALID [2022-02-20 23:40:02,801 INFO L290 TraceCheckUtils]: 47: Hoare triple {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} is VALID [2022-02-20 23:40:02,801 INFO L290 TraceCheckUtils]: 46: Hoare triple {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} is VALID [2022-02-20 23:40:02,802 INFO L290 TraceCheckUtils]: 45: Hoare triple {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} assume cstrcspn_#t~short7#1; {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} is VALID [2022-02-20 23:40:02,811 INFO L290 TraceCheckUtils]: 44: Hoare triple {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} is VALID [2022-02-20 23:40:02,812 INFO L290 TraceCheckUtils]: 43: Hoare triple {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} is VALID [2022-02-20 23:40:02,812 INFO L290 TraceCheckUtils]: 42: Hoare triple {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18496#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 1) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|))))} is VALID [2022-02-20 23:40:02,813 INFO L290 TraceCheckUtils]: 41: Hoare triple {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,813 INFO L290 TraceCheckUtils]: 40: Hoare triple {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,814 INFO L290 TraceCheckUtils]: 39: Hoare triple {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} assume cstrcspn_#t~short7#1; {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,814 INFO L290 TraceCheckUtils]: 38: Hoare triple {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,815 INFO L290 TraceCheckUtils]: 37: Hoare triple {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,815 INFO L290 TraceCheckUtils]: 36: Hoare triple {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} assume !!cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1;cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset := cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_#t~post8#1.base, 1 + cstrcspn_#t~post8#1.offset;havoc cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset; {18515#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 2)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,816 INFO L290 TraceCheckUtils]: 35: Hoare triple {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} cstrcspn_#t~short7#1 := cstrcspn_#t~mem6#1 != (if cstrcspn_~c~0#1 % 256 <= 127 then cstrcspn_~c~0#1 % 256 else cstrcspn_~c~0#1 % 256 - 256); {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,817 INFO L290 TraceCheckUtils]: 34: Hoare triple {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} SUMMARY for call cstrcspn_#t~mem6#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-3 {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,817 INFO L290 TraceCheckUtils]: 33: Hoare triple {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} assume cstrcspn_#t~short7#1; {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,818 INFO L290 TraceCheckUtils]: 32: Hoare triple {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,818 INFO L290 TraceCheckUtils]: 31: Hoare triple {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,819 INFO L290 TraceCheckUtils]: 30: Hoare triple {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,820 INFO L290 TraceCheckUtils]: 29: Hoare triple {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,820 INFO L290 TraceCheckUtils]: 28: Hoare triple {18559#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {18534#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_cstrcspn_~s~0#1.offset| 3)) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s~0#1.base|))) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,821 INFO L290 TraceCheckUtils]: 27: Hoare triple {18559#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {18559#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))))} is VALID [2022-02-20 23:40:02,821 INFO L290 TraceCheckUtils]: 26: Hoare triple {18566#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {18559#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ 3 |ULTIMATE.start_cstrcspn_~s2#1.offset|)) (= (select (select |#memory_int| |ULTIMATE.start_cstrcspn_~s2#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0) (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_cstrcspn_~s2#1.base|)))))} is VALID [2022-02-20 23:40:02,822 INFO L290 TraceCheckUtils]: 25: Hoare triple {18570#(and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))))} SUMMARY for call write~int(0, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + (main_~length2~0#1 - 1), 1); srcloc: L552 {18566#(forall ((|v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| Int)) (or (not (<= (+ |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| 1) (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|))) (< |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58| (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 3)) (= (select (select |#memory_int| |ULTIMATE.start_main_~nondetString2~0#1.base|) |v_ULTIMATE.start_cstrcspn_~s~0#1.offset_58|) 0)))} is VALID [2022-02-20 23:40:02,823 INFO L290 TraceCheckUtils]: 24: Hoare triple {18570#(and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))))} SUMMARY for call write~int(0, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + (main_~length1~0#1 - 1), 1); srcloc: L547-4 {18570#(and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))))} is VALID [2022-02-20 23:40:02,823 INFO L290 TraceCheckUtils]: 23: Hoare triple {18577#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {18570#(and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))))} is VALID [2022-02-20 23:40:02,824 INFO L290 TraceCheckUtils]: 22: Hoare triple {18581#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18577#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 1) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,824 INFO L290 TraceCheckUtils]: 21: Hoare triple {18581#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet17#1; {18581#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,825 INFO L290 TraceCheckUtils]: 20: Hoare triple {18581#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18581#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,825 INFO L290 TraceCheckUtils]: 19: Hoare triple {18581#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {18581#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,826 INFO L290 TraceCheckUtils]: 18: Hoare triple {18594#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18581#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 2 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,826 INFO L290 TraceCheckUtils]: 17: Hoare triple {18594#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet17#1; {18594#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,827 INFO L290 TraceCheckUtils]: 16: Hoare triple {18594#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18594#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,828 INFO L290 TraceCheckUtils]: 15: Hoare triple {18594#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {18594#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,828 INFO L290 TraceCheckUtils]: 14: Hoare triple {18607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 4) |ULTIMATE.start_main_~length2~0#1|))} main_#t~post16#1 := main_~i~1#1;main_~i~1#1 := 1 + main_#t~post16#1;havoc main_#t~post16#1; {18594#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ 3 |ULTIMATE.start_main_~i~1#1|) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {18607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 4) |ULTIMATE.start_main_~length2~0#1|))} havoc main_#t~nondet17#1; {18607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 4) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,829 INFO L290 TraceCheckUtils]: 12: Hoare triple {18607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 4) |ULTIMATE.start_main_~length2~0#1|))} SUMMARY for call write~int(main_#t~nondet17#1, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset + main_~i~1#1, 1); srcloc: L549 {18607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 4) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,830 INFO L290 TraceCheckUtils]: 11: Hoare triple {18607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 4) |ULTIMATE.start_main_~length2~0#1|))} assume !!(main_~i~1#1 < main_~length2~0#1 - 1);assume -128 <= main_#t~nondet17#1 && main_#t~nondet17#1 <= 127; {18607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 4) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,830 INFO L290 TraceCheckUtils]: 10: Hoare triple {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} main_~i~1#1 := 0; {18607#(or (and (or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4))) (or (<= |ULTIMATE.start_main_~length2~0#1| 4) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))) (< (+ |ULTIMATE.start_main_~i~1#1| 4) |ULTIMATE.start_main_~length2~0#1|))} is VALID [2022-02-20 23:40:02,831 INFO L290 TraceCheckUtils]: 9: Hoare triple {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} is VALID [2022-02-20 23:40:02,831 INFO L290 TraceCheckUtils]: 8: Hoare triple {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} is VALID [2022-02-20 23:40:02,831 INFO L290 TraceCheckUtils]: 7: Hoare triple {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} havoc main_#t~nondet15#1; {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} is VALID [2022-02-20 23:40:02,832 INFO L290 TraceCheckUtils]: 6: Hoare triple {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} is VALID [2022-02-20 23:40:02,832 INFO L290 TraceCheckUtils]: 5: Hoare triple {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} is VALID [2022-02-20 23:40:02,833 INFO L290 TraceCheckUtils]: 4: Hoare triple {18271#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {18620#(or (<= (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| |ULTIMATE.start_main_~length2~0#1|)) (< 4 |ULTIMATE.start_main_~length2~0#1|) (< (select |#length| |ULTIMATE.start_main_~nondetString2~0#1.base|) (+ |ULTIMATE.start_main_~nondetString2~0#1.offset| 4)))} is VALID [2022-02-20 23:40:02,833 INFO L290 TraceCheckUtils]: 3: Hoare triple {18271#true} assume !(main_~length2~0#1 < 1); {18271#true} is VALID [2022-02-20 23:40:02,833 INFO L290 TraceCheckUtils]: 2: Hoare triple {18271#true} assume !(main_~length1~0#1 < 1); {18271#true} is VALID [2022-02-20 23:40:02,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {18271#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {18271#true} is VALID [2022-02-20 23:40:02,833 INFO L290 TraceCheckUtils]: 0: Hoare triple {18271#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {18271#true} is VALID [2022-02-20 23:40:02,833 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 31 proven. 24 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 23:40:02,834 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [973845141] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 23:40:02,834 INFO L191 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-02-20 23:40:02,834 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 17, 17] total 47 [2022-02-20 23:40:02,834 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2122839568] [2022-02-20 23:40:02,834 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2022-02-20 23:40:02,834 INFO L78 Accepts]: Start accepts. Automaton has has 47 states, 47 states have (on average 3.276595744680851) internal successors, (154), 47 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 56 [2022-02-20 23:40:02,834 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 23:40:02,835 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 47 states, 47 states have (on average 3.276595744680851) internal successors, (154), 47 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call 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:05,156 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 153 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:05,156 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 47 states [2022-02-20 23:40:05,156 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 23:40:05,156 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 47 interpolants. [2022-02-20 23:40:05,157 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=190, Invalid=1972, Unknown=0, NotChecked=0, Total=2162 [2022-02-20 23:40:05,157 INFO L87 Difference]: Start difference. First operand 449 states and 519 transitions. Second operand has 47 states, 47 states have (on average 3.276595744680851) internal successors, (154), 47 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call 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:09,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:09,299 INFO L93 Difference]: Finished difference Result 550 states and 629 transitions. [2022-02-20 23:40:09,299 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 33 states. [2022-02-20 23:40:09,299 INFO L78 Accepts]: Start accepts. Automaton has has 47 states, 47 states have (on average 3.276595744680851) internal successors, (154), 47 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 56 [2022-02-20 23:40:09,299 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 23:40:09,299 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 47 states have (on average 3.276595744680851) internal successors, (154), 47 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call 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:09,300 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 132 transitions. [2022-02-20 23:40:09,300 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 47 states have (on average 3.276595744680851) internal successors, (154), 47 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call 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:09,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 132 transitions. [2022-02-20 23:40:09,301 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 33 states and 132 transitions. [2022-02-20 23:40:15,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 130 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-02-20 23:40:15,322 INFO L225 Difference]: With dead ends: 550 [2022-02-20 23:40:15,322 INFO L226 Difference]: Without dead ends: 522 [2022-02-20 23:40:15,323 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 155 GetRequests, 84 SyntacticMatches, 0 SemanticMatches, 71 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1194 ImplicationChecksByTransitivity, 2.2s TimeCoverageRelationStatistics Valid=548, Invalid=4708, Unknown=0, NotChecked=0, Total=5256 [2022-02-20 23:40:15,326 INFO L933 BasicCegarLoop]: 42 mSDtfsCounter, 143 mSDsluCounter, 889 mSDsCounter, 0 mSdLazyCounter, 465 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 143 SdHoareTripleChecker+Valid, 931 SdHoareTripleChecker+Invalid, 777 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 465 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 284 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-02-20 23:40:15,326 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [143 Valid, 931 Invalid, 777 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 465 Invalid, 0 Unknown, 284 Unchecked, 0.3s Time] [2022-02-20 23:40:15,326 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 522 states. [2022-02-20 23:40:15,330 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 522 to 499. [2022-02-20 23:40:15,330 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 23:40:15,331 INFO L82 GeneralOperation]: Start isEquivalent. First operand 522 states. Second operand has 499 states, 497 states have (on average 1.1629778672032194) internal successors, (578), 498 states have internal predecessors, (578), 0 states have call successors, (0), 0 states have call 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,331 INFO L74 IsIncluded]: Start isIncluded. First operand 522 states. Second operand has 499 states, 497 states have (on average 1.1629778672032194) internal successors, (578), 498 states have internal predecessors, (578), 0 states have call successors, (0), 0 states have call 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,332 INFO L87 Difference]: Start difference. First operand 522 states. Second operand has 499 states, 497 states have (on average 1.1629778672032194) internal successors, (578), 498 states have internal predecessors, (578), 0 states have call successors, (0), 0 states have call 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,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:15,339 INFO L93 Difference]: Finished difference Result 522 states and 601 transitions. [2022-02-20 23:40:15,339 INFO L276 IsEmpty]: Start isEmpty. Operand 522 states and 601 transitions. [2022-02-20 23:40:15,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:15,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:15,340 INFO L74 IsIncluded]: Start isIncluded. First operand has 499 states, 497 states have (on average 1.1629778672032194) internal successors, (578), 498 states have internal predecessors, (578), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 522 states. [2022-02-20 23:40:15,341 INFO L87 Difference]: Start difference. First operand has 499 states, 497 states have (on average 1.1629778672032194) internal successors, (578), 498 states have internal predecessors, (578), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 522 states. [2022-02-20 23:40:15,348 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 23:40:15,348 INFO L93 Difference]: Finished difference Result 522 states and 601 transitions. [2022-02-20 23:40:15,349 INFO L276 IsEmpty]: Start isEmpty. Operand 522 states and 601 transitions. [2022-02-20 23:40:15,349 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 23:40:15,349 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 23:40:15,349 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 23:40:15,349 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 23:40:15,350 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 499 states, 497 states have (on average 1.1629778672032194) internal successors, (578), 498 states have internal predecessors, (578), 0 states have call successors, (0), 0 states have call 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,357 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 499 states to 499 states and 578 transitions. [2022-02-20 23:40:15,357 INFO L78 Accepts]: Start accepts. Automaton has 499 states and 578 transitions. Word has length 56 [2022-02-20 23:40:15,357 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 23:40:15,357 INFO L470 AbstractCegarLoop]: Abstraction has 499 states and 578 transitions. [2022-02-20 23:40:15,357 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 47 states, 47 states have (on average 3.276595744680851) internal successors, (154), 47 states have internal predecessors, (154), 0 states have call successors, (0), 0 states have call 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,357 INFO L276 IsEmpty]: Start isEmpty. Operand 499 states and 578 transitions. [2022-02-20 23:40:15,358 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-02-20 23:40:15,358 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 23:40:15,358 INFO L514 BasicCegarLoop]: trace histogram [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] [2022-02-20 23:40:15,377 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:15,574 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:15,574 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:15,575 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 23:40:15,575 INFO L85 PathProgramCache]: Analyzing trace with hash -1575476041, now seen corresponding path program 5 times [2022-02-20 23:40:15,575 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 23:40:15,575 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1908918899] [2022-02-20 23:40:15,575 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 23:40:15,575 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 23:40:15,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:15,715 INFO L290 TraceCheckUtils]: 0: Hoare triple {20797#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {20797#true} is VALID [2022-02-20 23:40:15,715 INFO L290 TraceCheckUtils]: 1: Hoare triple {20797#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {20797#true} is VALID [2022-02-20 23:40:15,715 INFO L290 TraceCheckUtils]: 2: Hoare triple {20797#true} assume !(main_~length1~0#1 < 1); {20797#true} is VALID [2022-02-20 23:40:15,715 INFO L290 TraceCheckUtils]: 3: Hoare triple {20797#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {20797#true} is VALID [2022-02-20 23:40:15,716 INFO L290 TraceCheckUtils]: 4: Hoare triple {20797#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {20799#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,716 INFO L290 TraceCheckUtils]: 5: Hoare triple {20799#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {20799#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,717 INFO L290 TraceCheckUtils]: 6: Hoare triple {20799#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {20799#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,717 INFO L290 TraceCheckUtils]: 7: Hoare triple {20799#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet15#1; {20799#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,717 INFO L290 TraceCheckUtils]: 8: Hoare triple {20799#(and (= |ULTIMATE.start_main_~i~0#1| 0) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {20800#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,718 INFO L290 TraceCheckUtils]: 9: Hoare triple {20800#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {20800#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,718 INFO L290 TraceCheckUtils]: 10: Hoare triple {20800#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {20800#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,719 INFO L290 TraceCheckUtils]: 11: Hoare triple {20800#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} havoc main_#t~nondet15#1; {20800#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,719 INFO L290 TraceCheckUtils]: 12: Hoare triple {20800#(and (<= 1 |ULTIMATE.start_main_~i~0#1|) (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {20801#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 2 |ULTIMATE.start_main_~i~0#1|))} is VALID [2022-02-20 23:40:15,720 INFO L290 TraceCheckUtils]: 13: Hoare triple {20801#(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~nondet15#1 && main_#t~nondet15#1 <= 127; {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:15,720 INFO L290 TraceCheckUtils]: 14: Hoare triple {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:15,720 INFO L290 TraceCheckUtils]: 15: Hoare triple {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} havoc main_#t~nondet15#1; {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:15,721 INFO L290 TraceCheckUtils]: 16: Hoare triple {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:15,721 INFO L290 TraceCheckUtils]: 17: Hoare triple {20802#(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); {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:15,721 INFO L290 TraceCheckUtils]: 18: Hoare triple {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} main_~i~1#1 := 0; {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:15,722 INFO L290 TraceCheckUtils]: 19: Hoare triple {20802#(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); {20802#(and (= |ULTIMATE.start_main_~nondetString1~0#1.offset| 0) (<= 4 |ULTIMATE.start_main_~length1~0#1|))} is VALID [2022-02-20 23:40:15,722 INFO L290 TraceCheckUtils]: 20: Hoare triple {20802#(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: L547-4 {20803#(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:40:15,723 INFO L290 TraceCheckUtils]: 21: Hoare triple {20803#(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: L552 {20803#(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:40:15,723 INFO L290 TraceCheckUtils]: 22: Hoare triple {20803#(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 { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,724 INFO L290 TraceCheckUtils]: 23: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,724 INFO L290 TraceCheckUtils]: 24: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,725 INFO L290 TraceCheckUtils]: 25: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,725 INFO L290 TraceCheckUtils]: 26: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,725 INFO L290 TraceCheckUtils]: 27: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,726 INFO L290 TraceCheckUtils]: 28: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,726 INFO L290 TraceCheckUtils]: 29: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1; {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,726 INFO L290 TraceCheckUtils]: 30: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,727 INFO L290 TraceCheckUtils]: 31: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,727 INFO L290 TraceCheckUtils]: 32: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} is VALID [2022-02-20 23:40:15,728 INFO L290 TraceCheckUtils]: 33: Hoare triple {20804#(and (<= 4 (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (= |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 0))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,728 INFO L290 TraceCheckUtils]: 34: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,728 INFO L290 TraceCheckUtils]: 35: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,729 INFO L290 TraceCheckUtils]: 36: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,729 INFO L290 TraceCheckUtils]: 37: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,730 INFO L290 TraceCheckUtils]: 38: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,730 INFO L290 TraceCheckUtils]: 39: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,730 INFO L290 TraceCheckUtils]: 40: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,731 INFO L290 TraceCheckUtils]: 41: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,731 INFO L290 TraceCheckUtils]: 42: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,732 INFO L290 TraceCheckUtils]: 43: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,732 INFO L290 TraceCheckUtils]: 44: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,733 INFO L290 TraceCheckUtils]: 45: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,733 INFO L290 TraceCheckUtils]: 46: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,734 INFO L290 TraceCheckUtils]: 47: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,734 INFO L290 TraceCheckUtils]: 48: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,734 INFO L290 TraceCheckUtils]: 49: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,735 INFO L290 TraceCheckUtils]: 50: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,735 INFO L290 TraceCheckUtils]: 51: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,735 INFO L290 TraceCheckUtils]: 52: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,736 INFO L290 TraceCheckUtils]: 53: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,736 INFO L290 TraceCheckUtils]: 54: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:15,737 INFO L290 TraceCheckUtils]: 55: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {20807#(and (<= 3 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:40:15,737 INFO L290 TraceCheckUtils]: 56: Hoare triple {20807#(and (<= 3 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {20798#false} is VALID [2022-02-20 23:40:15,738 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 1 proven. 50 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:15,738 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 23:40:15,738 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1908918899] [2022-02-20 23:40:15,738 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1908918899] provided 0 perfect and 1 imperfect interpolant sequences [2022-02-20 23:40:15,738 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1239279436] [2022-02-20 23:40:15,738 INFO L93 rtionOrderModulation]: Changing assertion order to INSIDE_LOOP_FIRST1 [2022-02-20 23:40:15,738 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 23:40:15,738 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 23:40:15,739 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:15,740 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:15,824 INFO L228 tOrderPrioritization]: Assert order INSIDE_LOOP_FIRST1 issued 4 check-sat command(s) [2022-02-20 23:40:15,824 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 23:40:15,825 INFO L263 TraceCheckSpWp]: Trace formula consists of 252 conjuncts, 30 conjunts are in the unsatisfiable core [2022-02-20 23:40:15,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 23:40:15,845 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 23:40:16,265 INFO L290 TraceCheckUtils]: 0: Hoare triple {20797#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier; {20797#true} is VALID [2022-02-20 23:40:16,265 INFO L290 TraceCheckUtils]: 1: Hoare triple {20797#true} assume { :end_inline_ULTIMATE.init } true;main_old_#valid#1 := #valid;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet10#1, main_#t~nondet11#1, main_#t~malloc12#1.base, main_#t~malloc12#1.offset, main_#t~malloc13#1.base, main_#t~malloc13#1.offset, main_#t~nondet15#1, main_#t~post14#1, main_~i~0#1, main_#t~nondet17#1, main_#t~post16#1, main_~i~1#1, main_#t~ret18#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~nondet10#1 && main_#t~nondet10#1 <= 2147483647;main_~length1~0#1 := main_#t~nondet10#1;havoc main_#t~nondet10#1;assume -2147483648 <= main_#t~nondet11#1 && main_#t~nondet11#1 <= 2147483647;main_~length2~0#1 := main_#t~nondet11#1;havoc main_#t~nondet11#1; {20797#true} is VALID [2022-02-20 23:40:16,265 INFO L290 TraceCheckUtils]: 2: Hoare triple {20797#true} assume !(main_~length1~0#1 < 1); {20797#true} is VALID [2022-02-20 23:40:16,265 INFO L290 TraceCheckUtils]: 3: Hoare triple {20797#true} assume main_~length2~0#1 < 1;main_~length2~0#1 := 1; {20797#true} is VALID [2022-02-20 23:40:16,266 INFO L290 TraceCheckUtils]: 4: Hoare triple {20797#true} call main_#t~malloc12#1.base, main_#t~malloc12#1.offset := #Ultimate.allocOnStack(main_~length1~0#1);main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset := main_#t~malloc12#1.base, main_#t~malloc12#1.offset;call main_#t~malloc13#1.base, main_#t~malloc13#1.offset := #Ultimate.allocOnStack(main_~length2~0#1);main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset := main_#t~malloc13#1.base, main_#t~malloc13#1.offset;main_~i~0#1 := 0; {20823#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,266 INFO L290 TraceCheckUtils]: 5: Hoare triple {20823#(<= 0 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {20823#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,266 INFO L290 TraceCheckUtils]: 6: Hoare triple {20823#(<= 0 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {20823#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,266 INFO L290 TraceCheckUtils]: 7: Hoare triple {20823#(<= 0 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet15#1; {20823#(<= 0 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,267 INFO L290 TraceCheckUtils]: 8: Hoare triple {20823#(<= 0 |ULTIMATE.start_main_~i~0#1|)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {20836#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {20836#(<= 1 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {20836#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,267 INFO L290 TraceCheckUtils]: 10: Hoare triple {20836#(<= 1 |ULTIMATE.start_main_~i~0#1|)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {20836#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,268 INFO L290 TraceCheckUtils]: 11: Hoare triple {20836#(<= 1 |ULTIMATE.start_main_~i~0#1|)} havoc main_#t~nondet15#1; {20836#(<= 1 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,268 INFO L290 TraceCheckUtils]: 12: Hoare triple {20836#(<= 1 |ULTIMATE.start_main_~i~0#1|)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {20849#(<= 2 |ULTIMATE.start_main_~i~0#1|)} is VALID [2022-02-20 23:40:16,268 INFO L290 TraceCheckUtils]: 13: Hoare triple {20849#(<= 2 |ULTIMATE.start_main_~i~0#1|)} assume !!(main_~i~0#1 < main_~length1~0#1 - 1);assume -128 <= main_#t~nondet15#1 && main_#t~nondet15#1 <= 127; {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:16,269 INFO L290 TraceCheckUtils]: 14: Hoare triple {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} SUMMARY for call write~int(main_#t~nondet15#1, main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset + main_~i~0#1, 1); srcloc: L543 {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:16,269 INFO L290 TraceCheckUtils]: 15: Hoare triple {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} havoc main_#t~nondet15#1; {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:16,269 INFO L290 TraceCheckUtils]: 16: Hoare triple {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_#t~post14#1 := main_~i~0#1;main_~i~0#1 := 1 + main_#t~post14#1;havoc main_#t~post14#1; {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:16,269 INFO L290 TraceCheckUtils]: 17: Hoare triple {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~0#1 < main_~length1~0#1 - 1); {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:16,270 INFO L290 TraceCheckUtils]: 18: Hoare triple {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} main_~i~1#1 := 0; {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:16,270 INFO L290 TraceCheckUtils]: 19: Hoare triple {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} assume !(main_~i~1#1 < main_~length2~0#1 - 1); {20853#(< 3 |ULTIMATE.start_main_~length1~0#1|)} is VALID [2022-02-20 23:40:16,270 INFO L290 TraceCheckUtils]: 20: Hoare triple {20853#(< 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: L547-4 {20875#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:40:16,271 INFO L290 TraceCheckUtils]: 21: Hoare triple {20875#(< (+ |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: L552 {20875#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} is VALID [2022-02-20 23:40:16,271 INFO L290 TraceCheckUtils]: 22: Hoare triple {20875#(< (+ |ULTIMATE.start_main_~nondetString1~0#1.offset| 3) (select |#length| |ULTIMATE.start_main_~nondetString1~0#1.base|))} assume { :begin_inline_cstrcspn } true;cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset, cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset := main_~nondetString1~0#1.base, main_~nondetString1~0#1.offset, main_~nondetString2~0#1.base, main_~nondetString2~0#1.offset;havoc cstrcspn_#res#1;havoc cstrcspn_#t~mem4#1, cstrcspn_#t~post8#1.base, cstrcspn_#t~post8#1.offset, cstrcspn_#t~mem5#1, cstrcspn_#t~mem6#1, cstrcspn_#t~short7#1, cstrcspn_#t~mem9#1, cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset, cstrcspn_#t~mem3#1, cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset, cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset, cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, cstrcspn_~c~0#1;cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset := cstrcspn_#in~s1#1.base, cstrcspn_#in~s1#1.offset;cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset := cstrcspn_#in~s2#1.base, cstrcspn_#in~s2#1.offset;havoc cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;havoc cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset;havoc cstrcspn_~c~0#1;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_~s1#1.base, cstrcspn_~s1#1.offset; {20882#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:40:16,271 INFO L290 TraceCheckUtils]: 23: Hoare triple {20882#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {20882#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:40:16,272 INFO L290 TraceCheckUtils]: 24: Hoare triple {20882#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {20882#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} is VALID [2022-02-20 23:40:16,272 INFO L290 TraceCheckUtils]: 25: Hoare triple {20882#(< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,272 INFO L290 TraceCheckUtils]: 26: Hoare triple {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,273 INFO L290 TraceCheckUtils]: 27: Hoare triple {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,273 INFO L290 TraceCheckUtils]: 28: Hoare triple {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,274 INFO L290 TraceCheckUtils]: 29: Hoare triple {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,274 INFO L290 TraceCheckUtils]: 30: Hoare triple {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,274 INFO L290 TraceCheckUtils]: 31: Hoare triple {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,275 INFO L290 TraceCheckUtils]: 32: Hoare triple {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,275 INFO L290 TraceCheckUtils]: 33: Hoare triple {20892#(and (< (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 0 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,276 INFO L290 TraceCheckUtils]: 34: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,276 INFO L290 TraceCheckUtils]: 35: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,276 INFO L290 TraceCheckUtils]: 36: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,277 INFO L290 TraceCheckUtils]: 37: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,277 INFO L290 TraceCheckUtils]: 38: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,277 INFO L290 TraceCheckUtils]: 39: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,278 INFO L290 TraceCheckUtils]: 40: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,278 INFO L290 TraceCheckUtils]: 41: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,278 INFO L290 TraceCheckUtils]: 42: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,279 INFO L290 TraceCheckUtils]: 43: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,279 INFO L290 TraceCheckUtils]: 44: Hoare triple {20805#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 3) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 1 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,280 INFO L290 TraceCheckUtils]: 45: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem3#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L519-4 {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,280 INFO L290 TraceCheckUtils]: 46: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !!(0 != cstrcspn_#t~mem3#1);havoc cstrcspn_#t~mem3#1;cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset := cstrcspn_~s2#1.base, cstrcspn_~s2#1.offset; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,280 INFO L290 TraceCheckUtils]: 47: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem4#1 := read~int(cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset, 1); srcloc: L521 {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,281 INFO L290 TraceCheckUtils]: 48: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_~c~0#1 := cstrcspn_#t~mem4#1;havoc cstrcspn_#t~mem4#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,281 INFO L290 TraceCheckUtils]: 49: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem5#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-8 {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,281 INFO L290 TraceCheckUtils]: 50: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~short7#1 := 0 != cstrcspn_#t~mem5#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,282 INFO L290 TraceCheckUtils]: 51: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,282 INFO L290 TraceCheckUtils]: 52: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !cstrcspn_#t~short7#1;havoc cstrcspn_#t~mem5#1;havoc cstrcspn_#t~mem6#1;havoc cstrcspn_#t~short7#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,282 INFO L290 TraceCheckUtils]: 53: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} SUMMARY for call cstrcspn_#t~mem9#1 := read~int(cstrcspn_~s~0#1.base, cstrcspn_~s~0#1.offset, 1); srcloc: L522-9 {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,283 INFO L290 TraceCheckUtils]: 54: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} assume !(cstrcspn_#t~mem9#1 == cstrcspn_~c~0#1);havoc cstrcspn_#t~mem9#1; {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} is VALID [2022-02-20 23:40:16,283 INFO L290 TraceCheckUtils]: 55: Hoare triple {20806#(and (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 2) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)) (<= 2 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|))} cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset := cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset;cstrcspn_~sc1~0#1.base, cstrcspn_~sc1~0#1.offset := cstrcspn_#t~post2#1.base, 1 + cstrcspn_#t~post2#1.offset;havoc cstrcspn_#t~post2#1.base, cstrcspn_#t~post2#1.offset; {20807#(and (<= 3 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} is VALID [2022-02-20 23:40:16,284 INFO L290 TraceCheckUtils]: 56: Hoare triple {20807#(and (<= 3 |ULTIMATE.start_cstrcspn_~sc1~0#1.offset|) (<= (+ |ULTIMATE.start_cstrcspn_~sc1~0#1.offset| 1) (select |#length| |ULTIMATE.start_cstrcspn_~sc1~0#1.base|)))} assume !(1 + cstrcspn_~sc1~0#1.offset <= #length[cstrcspn_~sc1~0#1.base] && 0 <= cstrcspn_~sc1~0#1.offset); {20798#false} is VALID [2022-02-20 23:40:16,284 INFO L134 CoverageAnalysis]: Checked inductivity of 51 backedges. 6 proven. 45 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 23:40:16,284 INFO L328 TraceCheckSpWp]: Computing backward predicates...