/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata ./data -tc ../../../trunk/examples/toolchains/AutomizerC.xml --traceabstraction.compute.interpolants.along.a.counterexample Craig_NestedInterpolation --traceabstraction.use.separate.solver.for.trace.checks true -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf -i ../../../trunk/examples/svcomp/loops/veris.c_OpenSER_cases1_stripFullBoth_arr.i -------------------------------------------------------------------------------- This is Ultimate 0.1.25-267fbe0 [2020-07-18 06:34:43,108 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-18 06:34:43,112 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-18 06:34:43,127 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-18 06:34:43,127 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-18 06:34:43,128 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-18 06:34:43,130 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-18 06:34:43,133 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-18 06:34:43,135 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-18 06:34:43,136 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-18 06:34:43,138 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-18 06:34:43,139 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-18 06:34:43,139 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-18 06:34:43,140 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-18 06:34:43,142 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-18 06:34:43,143 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-18 06:34:43,145 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-18 06:34:43,146 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-18 06:34:43,148 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-18 06:34:43,151 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-18 06:34:43,153 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-18 06:34:43,154 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-18 06:34:43,155 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-18 06:34:43,156 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-18 06:34:43,158 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-18 06:34:43,158 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-18 06:34:43,159 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-18 06:34:43,160 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-18 06:34:43,160 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-18 06:34:43,162 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-18 06:34:43,162 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-18 06:34:43,163 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-18 06:34:43,164 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-18 06:34:43,165 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-18 06:34:43,166 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-18 06:34:43,166 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-18 06:34:43,167 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-18 06:34:43,167 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-18 06:34:43,167 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-18 06:34:43,169 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-18 06:34:43,169 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-18 06:34:43,170 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf [2020-07-18 06:34:43,187 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-18 06:34:43,187 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-18 06:34:43,188 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-18 06:34:43,189 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-18 06:34:43,189 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-18 06:34:43,189 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-18 06:34:43,189 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-18 06:34:43,189 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-18 06:34:43,190 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-18 06:34:43,190 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-18 06:34:43,190 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-18 06:34:43,190 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-18 06:34:43,190 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-18 06:34:43,190 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-18 06:34:43,191 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-18 06:34:43,191 INFO L138 SettingsManager]: * Size of a code block=SingleStatement [2020-07-18 06:34:43,191 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-18 06:34:43,191 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-18 06:34:43,191 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-18 06:34:43,192 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-18 06:34:43,192 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=AcceleratedInterpolation [2020-07-18 06:34:43,192 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-18 06:34:43,192 INFO L138 SettingsManager]: * Use separate solver for trace checks=false Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Compute Interpolants along a Counterexample -> Craig_NestedInterpolation Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: Use separate solver for trace checks -> true [2020-07-18 06:34:43,501 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-18 06:34:43,524 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-18 06:34:43,531 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-18 06:34:43,533 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-18 06:34:43,534 INFO L275 PluginConnector]: CDTParser initialized [2020-07-18 06:34:43,535 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loops/veris.c_OpenSER_cases1_stripFullBoth_arr.i [2020-07-18 06:34:43,648 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7eab1db8e/c1c18385859e41b995e67312b89c5729/FLAG4155cb6c9 [2020-07-18 06:34:44,326 INFO L306 CDTParser]: Found 1 translation units. [2020-07-18 06:34:44,327 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops/veris.c_OpenSER_cases1_stripFullBoth_arr.i [2020-07-18 06:34:44,341 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7eab1db8e/c1c18385859e41b995e67312b89c5729/FLAG4155cb6c9 [2020-07-18 06:34:44,576 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/7eab1db8e/c1c18385859e41b995e67312b89c5729 [2020-07-18 06:34:44,592 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-18 06:34:44,597 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-18 06:34:44,602 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-18 06:34:44,603 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-18 06:34:44,608 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-18 06:34:44,611 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.07 06:34:44" (1/1) ... [2020-07-18 06:34:44,614 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@71195c2 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:44, skipping insertion in model container [2020-07-18 06:34:44,614 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 18.07 06:34:44" (1/1) ... [2020-07-18 06:34:44,627 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-18 06:34:44,663 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-18 06:34:44,922 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-18 06:34:44,945 INFO L203 MainTranslator]: Completed pre-run [2020-07-18 06:34:45,100 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-18 06:34:45,127 INFO L208 MainTranslator]: Completed translation [2020-07-18 06:34:45,128 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45 WrapperNode [2020-07-18 06:34:45,128 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-18 06:34:45,129 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-18 06:34:45,129 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-18 06:34:45,129 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-18 06:34:45,143 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (1/1) ... [2020-07-18 06:34:45,144 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (1/1) ... [2020-07-18 06:34:45,156 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (1/1) ... [2020-07-18 06:34:45,156 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (1/1) ... [2020-07-18 06:34:45,178 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (1/1) ... [2020-07-18 06:34:45,193 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (1/1) ... [2020-07-18 06:34:45,202 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (1/1) ... [2020-07-18 06:34:45,210 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-18 06:34:45,211 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-18 06:34:45,213 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-18 06:34:45,214 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-18 06:34:45,215 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (1/1) ... No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 1 with z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-18 06:34:45,292 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-18 06:34:45,292 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-18 06:34:45,292 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2020-07-18 06:34:45,293 INFO L138 BoogieDeclarations]: Found implementation of procedure r_strncpy [2020-07-18 06:34:45,293 INFO L138 BoogieDeclarations]: Found implementation of procedure parse_expression_list [2020-07-18 06:34:45,293 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-18 06:34:45,293 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-18 06:34:45,293 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_char [2020-07-18 06:34:45,293 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2020-07-18 06:34:45,294 INFO L130 BoogieDeclarations]: Found specification of procedure strchr [2020-07-18 06:34:45,294 INFO L130 BoogieDeclarations]: Found specification of procedure strrchr [2020-07-18 06:34:45,294 INFO L130 BoogieDeclarations]: Found specification of procedure strstr [2020-07-18 06:34:45,294 INFO L130 BoogieDeclarations]: Found specification of procedure strncpy [2020-07-18 06:34:45,295 INFO L130 BoogieDeclarations]: Found specification of procedure strncpy_ptr [2020-07-18 06:34:45,295 INFO L130 BoogieDeclarations]: Found specification of procedure strcpy [2020-07-18 06:34:45,295 INFO L130 BoogieDeclarations]: Found specification of procedure strlen [2020-07-18 06:34:45,295 INFO L130 BoogieDeclarations]: Found specification of procedure strncmp [2020-07-18 06:34:45,295 INFO L130 BoogieDeclarations]: Found specification of procedure strcmp [2020-07-18 06:34:45,296 INFO L130 BoogieDeclarations]: Found specification of procedure strcat [2020-07-18 06:34:45,296 INFO L130 BoogieDeclarations]: Found specification of procedure memcpy [2020-07-18 06:34:45,296 INFO L130 BoogieDeclarations]: Found specification of procedure isascii [2020-07-18 06:34:45,297 INFO L130 BoogieDeclarations]: Found specification of procedure isspace [2020-07-18 06:34:45,297 INFO L130 BoogieDeclarations]: Found specification of procedure getc [2020-07-18 06:34:45,297 INFO L130 BoogieDeclarations]: Found specification of procedure strrand [2020-07-18 06:34:45,297 INFO L130 BoogieDeclarations]: Found specification of procedure istrrand [2020-07-18 06:34:45,297 INFO L130 BoogieDeclarations]: Found specification of procedure istrchr [2020-07-18 06:34:45,298 INFO L130 BoogieDeclarations]: Found specification of procedure istrrchr [2020-07-18 06:34:45,298 INFO L130 BoogieDeclarations]: Found specification of procedure istrncmp [2020-07-18 06:34:45,298 INFO L130 BoogieDeclarations]: Found specification of procedure istrstr [2020-07-18 06:34:45,298 INFO L130 BoogieDeclarations]: Found specification of procedure r_strncpy [2020-07-18 06:34:45,298 INFO L130 BoogieDeclarations]: Found specification of procedure r_strcpy [2020-07-18 06:34:45,298 INFO L130 BoogieDeclarations]: Found specification of procedure r_strcat [2020-07-18 06:34:45,299 INFO L130 BoogieDeclarations]: Found specification of procedure r_strncat [2020-07-18 06:34:45,301 INFO L130 BoogieDeclarations]: Found specification of procedure r_memcpy [2020-07-18 06:34:45,301 INFO L130 BoogieDeclarations]: Found specification of procedure parse_expression_list [2020-07-18 06:34:45,301 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-18 06:34:45,301 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-18 06:34:45,302 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-07-18 06:34:45,302 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-07-18 06:34:45,302 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-18 06:34:45,302 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-18 06:34:45,302 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-18 06:34:46,085 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-18 06:34:46,085 INFO L295 CfgBuilder]: Removed 4 assume(true) statements. [2020-07-18 06:34:46,092 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.07 06:34:46 BoogieIcfgContainer [2020-07-18 06:34:46,092 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-18 06:34:46,094 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-18 06:34:46,094 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-18 06:34:46,099 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-18 06:34:46,100 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 18.07 06:34:44" (1/3) ... [2020-07-18 06:34:46,101 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@221e3120 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.07 06:34:46, skipping insertion in model container [2020-07-18 06:34:46,102 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 18.07 06:34:45" (2/3) ... [2020-07-18 06:34:46,102 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@221e3120 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 18.07 06:34:46, skipping insertion in model container [2020-07-18 06:34:46,102 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 18.07 06:34:46" (3/3) ... [2020-07-18 06:34:46,105 INFO L109 eAbstractionObserver]: Analyzing ICFG veris.c_OpenSER_cases1_stripFullBoth_arr.i [2020-07-18 06:34:46,119 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2020-07-18 06:34:46,129 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-18 06:34:46,146 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-18 06:34:46,171 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-18 06:34:46,171 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-18 06:34:46,171 INFO L377 AbstractCegarLoop]: Compute interpolants for Craig_NestedInterpolation [2020-07-18 06:34:46,171 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-18 06:34:46,171 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-18 06:34:46,171 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-18 06:34:46,172 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-18 06:34:46,172 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-18 06:34:46,192 INFO L276 IsEmpty]: Start isEmpty. Operand 135 states. [2020-07-18 06:34:46,208 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2020-07-18 06:34:46,208 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:46,209 INFO L422 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:46,210 INFO L427 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:46,215 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:46,216 INFO L82 PathProgramCache]: Analyzing trace with hash 593727157, now seen corresponding path program 1 times [2020-07-18 06:34:46,225 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:46,226 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1044185496] [2020-07-18 06:34:46,226 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:46,339 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:46,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:46,465 INFO L280 TraceCheckUtils]: 0: Hoare triple {153#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {138#true} is VALID [2020-07-18 06:34:46,466 INFO L280 TraceCheckUtils]: 1: Hoare triple {138#true} #valid := #valid[0 := 0]; {138#true} is VALID [2020-07-18 06:34:46,466 INFO L280 TraceCheckUtils]: 2: Hoare triple {138#true} assume 0 < #StackHeapBarrier; {138#true} is VALID [2020-07-18 06:34:46,467 INFO L280 TraceCheckUtils]: 3: Hoare triple {138#true} assume true; {138#true} is VALID [2020-07-18 06:34:46,467 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {138#true} {138#true} #231#return; {138#true} is VALID [2020-07-18 06:34:46,474 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:46,482 INFO L280 TraceCheckUtils]: 0: Hoare triple {138#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {138#true} is VALID [2020-07-18 06:34:46,483 INFO L280 TraceCheckUtils]: 1: Hoare triple {138#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {138#true} is VALID [2020-07-18 06:34:46,483 INFO L280 TraceCheckUtils]: 2: Hoare triple {138#true} ~n := #in~n; {138#true} is VALID [2020-07-18 06:34:46,484 INFO L280 TraceCheckUtils]: 3: Hoare triple {138#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {138#true} is VALID [2020-07-18 06:34:46,484 INFO L280 TraceCheckUtils]: 4: Hoare triple {138#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {138#true} is VALID [2020-07-18 06:34:46,485 INFO L280 TraceCheckUtils]: 5: Hoare triple {138#true} havoc #t~ret0.base, #t~ret0.offset; {138#true} is VALID [2020-07-18 06:34:46,486 INFO L280 TraceCheckUtils]: 6: Hoare triple {138#true} assume true; {138#true} is VALID [2020-07-18 06:34:46,486 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {138#true} {139#false} #227#return; {139#false} is VALID [2020-07-18 06:34:46,489 INFO L263 TraceCheckUtils]: 0: Hoare triple {138#true} call ULTIMATE.init(); {153#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:46,489 INFO L280 TraceCheckUtils]: 1: Hoare triple {153#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {138#true} is VALID [2020-07-18 06:34:46,490 INFO L280 TraceCheckUtils]: 2: Hoare triple {138#true} #valid := #valid[0 := 0]; {138#true} is VALID [2020-07-18 06:34:46,490 INFO L280 TraceCheckUtils]: 3: Hoare triple {138#true} assume 0 < #StackHeapBarrier; {138#true} is VALID [2020-07-18 06:34:46,491 INFO L280 TraceCheckUtils]: 4: Hoare triple {138#true} assume true; {138#true} is VALID [2020-07-18 06:34:46,492 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {138#true} {138#true} #231#return; {138#true} is VALID [2020-07-18 06:34:46,492 INFO L263 TraceCheckUtils]: 6: Hoare triple {138#true} call #t~ret23 := main(); {138#true} is VALID [2020-07-18 06:34:46,493 INFO L280 TraceCheckUtils]: 7: Hoare triple {138#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {138#true} is VALID [2020-07-18 06:34:46,493 INFO L280 TraceCheckUtils]: 8: Hoare triple {138#true} ~i~1 := 0; {138#true} is VALID [2020-07-18 06:34:46,495 INFO L280 TraceCheckUtils]: 9: Hoare triple {138#true} assume !true; {139#false} is VALID [2020-07-18 06:34:46,495 INFO L280 TraceCheckUtils]: 10: Hoare triple {139#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {139#false} is VALID [2020-07-18 06:34:46,496 INFO L263 TraceCheckUtils]: 11: Hoare triple {139#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {139#false} is VALID [2020-07-18 06:34:46,496 INFO L280 TraceCheckUtils]: 12: Hoare triple {139#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {139#false} is VALID [2020-07-18 06:34:46,497 INFO L280 TraceCheckUtils]: 13: Hoare triple {139#false} ~start~0 := 0; {139#false} is VALID [2020-07-18 06:34:46,497 INFO L280 TraceCheckUtils]: 14: Hoare triple {139#false} ~i~0 := -1; {139#false} is VALID [2020-07-18 06:34:46,497 INFO L280 TraceCheckUtils]: 15: Hoare triple {139#false} ~j~0 := -1; {139#false} is VALID [2020-07-18 06:34:46,498 INFO L280 TraceCheckUtils]: 16: Hoare triple {139#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {139#false} is VALID [2020-07-18 06:34:46,498 INFO L280 TraceCheckUtils]: 17: Hoare triple {139#false} assume !(~str.base == 0 && ~str.offset == 0); {139#false} is VALID [2020-07-18 06:34:46,499 INFO L280 TraceCheckUtils]: 18: Hoare triple {139#false} #t~post2 := ~i~0; {139#false} is VALID [2020-07-18 06:34:46,499 INFO L280 TraceCheckUtils]: 19: Hoare triple {139#false} ~i~0 := 1 + #t~post2; {139#false} is VALID [2020-07-18 06:34:46,499 INFO L280 TraceCheckUtils]: 20: Hoare triple {139#false} havoc #t~post2; {139#false} is VALID [2020-07-18 06:34:46,500 INFO L280 TraceCheckUtils]: 21: Hoare triple {139#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {139#false} is VALID [2020-07-18 06:34:46,500 INFO L280 TraceCheckUtils]: 22: Hoare triple {139#false} #t~switch4 := 0 == #t~mem3; {139#false} is VALID [2020-07-18 06:34:46,501 INFO L280 TraceCheckUtils]: 23: Hoare triple {139#false} assume #t~switch4; {139#false} is VALID [2020-07-18 06:34:46,501 INFO L280 TraceCheckUtils]: 24: Hoare triple {139#false} assume !true; {139#false} is VALID [2020-07-18 06:34:46,501 INFO L280 TraceCheckUtils]: 25: Hoare triple {139#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {139#false} is VALID [2020-07-18 06:34:46,502 INFO L280 TraceCheckUtils]: 26: Hoare triple {139#false} assume !(34 == #t~mem9); {139#false} is VALID [2020-07-18 06:34:46,503 INFO L280 TraceCheckUtils]: 27: Hoare triple {139#false} havoc #t~mem9; {139#false} is VALID [2020-07-18 06:34:46,503 INFO L280 TraceCheckUtils]: 28: Hoare triple {139#false} ~j~0 := ~i~0 - 1; {139#false} is VALID [2020-07-18 06:34:46,504 INFO L280 TraceCheckUtils]: 29: Hoare triple {139#false} assume !true; {139#false} is VALID [2020-07-18 06:34:46,504 INFO L280 TraceCheckUtils]: 30: Hoare triple {139#false} #t~short17 := 0 < ~j~0; {139#false} is VALID [2020-07-18 06:34:46,504 INFO L280 TraceCheckUtils]: 31: Hoare triple {139#false} assume !#t~short17; {139#false} is VALID [2020-07-18 06:34:46,505 INFO L280 TraceCheckUtils]: 32: Hoare triple {139#false} assume !#t~short17; {139#false} is VALID [2020-07-18 06:34:46,505 INFO L280 TraceCheckUtils]: 33: Hoare triple {139#false} havoc #t~mem16; {139#false} is VALID [2020-07-18 06:34:46,506 INFO L280 TraceCheckUtils]: 34: Hoare triple {139#false} havoc #t~short17; {139#false} is VALID [2020-07-18 06:34:46,506 INFO L280 TraceCheckUtils]: 35: Hoare triple {139#false} assume ~start~0 <= ~j~0; {139#false} is VALID [2020-07-18 06:34:46,507 INFO L280 TraceCheckUtils]: 36: Hoare triple {139#false} assume !(1 + (~j~0 - ~start~0) >= 2); {139#false} is VALID [2020-07-18 06:34:46,507 INFO L263 TraceCheckUtils]: 37: Hoare triple {139#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {138#true} is VALID [2020-07-18 06:34:46,508 INFO L280 TraceCheckUtils]: 38: Hoare triple {138#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {138#true} is VALID [2020-07-18 06:34:46,508 INFO L280 TraceCheckUtils]: 39: Hoare triple {138#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {138#true} is VALID [2020-07-18 06:34:46,509 INFO L280 TraceCheckUtils]: 40: Hoare triple {138#true} ~n := #in~n; {138#true} is VALID [2020-07-18 06:34:46,509 INFO L280 TraceCheckUtils]: 41: Hoare triple {138#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {138#true} is VALID [2020-07-18 06:34:46,510 INFO L280 TraceCheckUtils]: 42: Hoare triple {138#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {138#true} is VALID [2020-07-18 06:34:46,510 INFO L280 TraceCheckUtils]: 43: Hoare triple {138#true} havoc #t~ret0.base, #t~ret0.offset; {138#true} is VALID [2020-07-18 06:34:46,511 INFO L280 TraceCheckUtils]: 44: Hoare triple {138#true} assume true; {138#true} is VALID [2020-07-18 06:34:46,511 INFO L275 TraceCheckUtils]: 45: Hoare quadruple {138#true} {139#false} #227#return; {139#false} is VALID [2020-07-18 06:34:46,511 INFO L280 TraceCheckUtils]: 46: Hoare triple {139#false} havoc #t~ret19.base, #t~ret19.offset; {139#false} is VALID [2020-07-18 06:34:46,512 INFO L263 TraceCheckUtils]: 47: Hoare triple {139#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {139#false} is VALID [2020-07-18 06:34:46,512 INFO L280 TraceCheckUtils]: 48: Hoare triple {139#false} ~cond := #in~cond; {139#false} is VALID [2020-07-18 06:34:46,513 INFO L280 TraceCheckUtils]: 49: Hoare triple {139#false} assume 0 == ~cond; {139#false} is VALID [2020-07-18 06:34:46,513 INFO L280 TraceCheckUtils]: 50: Hoare triple {139#false} assume !false; {139#false} is VALID [2020-07-18 06:34:46,522 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:46,523 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1044185496] [2020-07-18 06:34:46,526 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:34:46,526 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-18 06:34:46,527 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1923464537] [2020-07-18 06:34:46,536 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 51 [2020-07-18 06:34:46,541 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:46,545 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-18 06:34:46,668 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:46,668 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-18 06:34:46,669 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:46,679 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-18 06:34:46,680 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-18 06:34:46,683 INFO L87 Difference]: Start difference. First operand 135 states. Second operand 3 states. [2020-07-18 06:34:47,709 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:47,710 INFO L93 Difference]: Finished difference Result 254 states and 290 transitions. [2020-07-18 06:34:47,710 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-18 06:34:47,710 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 51 [2020-07-18 06:34:47,711 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:47,712 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-18 06:34:47,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 290 transitions. [2020-07-18 06:34:47,738 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-18 06:34:47,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 290 transitions. [2020-07-18 06:34:47,748 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 290 transitions. [2020-07-18 06:34:48,150 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 290 edges. 290 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:48,171 INFO L225 Difference]: With dead ends: 254 [2020-07-18 06:34:48,171 INFO L226 Difference]: Without dead ends: 111 [2020-07-18 06:34:48,178 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-18 06:34:48,202 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 111 states. [2020-07-18 06:34:48,315 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 111 to 111. [2020-07-18 06:34:48,316 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:48,317 INFO L82 GeneralOperation]: Start isEquivalent. First operand 111 states. Second operand 111 states. [2020-07-18 06:34:48,317 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand 111 states. [2020-07-18 06:34:48,318 INFO L87 Difference]: Start difference. First operand 111 states. Second operand 111 states. [2020-07-18 06:34:48,326 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:48,327 INFO L93 Difference]: Finished difference Result 111 states and 121 transitions. [2020-07-18 06:34:48,327 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 121 transitions. [2020-07-18 06:34:48,328 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:48,329 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:48,329 INFO L74 IsIncluded]: Start isIncluded. First operand 111 states. Second operand 111 states. [2020-07-18 06:34:48,329 INFO L87 Difference]: Start difference. First operand 111 states. Second operand 111 states. [2020-07-18 06:34:48,338 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:48,338 INFO L93 Difference]: Finished difference Result 111 states and 121 transitions. [2020-07-18 06:34:48,338 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 121 transitions. [2020-07-18 06:34:48,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:48,340 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:48,340 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:48,341 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:48,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 111 states. [2020-07-18 06:34:48,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 111 states to 111 states and 121 transitions. [2020-07-18 06:34:48,352 INFO L78 Accepts]: Start accepts. Automaton has 111 states and 121 transitions. Word has length 51 [2020-07-18 06:34:48,352 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:48,353 INFO L479 AbstractCegarLoop]: Abstraction has 111 states and 121 transitions. [2020-07-18 06:34:48,353 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-18 06:34:48,353 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 111 states and 121 transitions. [2020-07-18 06:34:48,514 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:48,514 INFO L276 IsEmpty]: Start isEmpty. Operand 111 states and 121 transitions. [2020-07-18 06:34:48,517 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2020-07-18 06:34:48,517 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:48,518 INFO L422 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, 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, 1, 1, 1] [2020-07-18 06:34:48,520 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-18 06:34:48,520 INFO L427 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:48,520 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:48,521 INFO L82 PathProgramCache]: Analyzing trace with hash 1128985001, now seen corresponding path program 1 times [2020-07-18 06:34:48,521 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:48,521 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [681309201] [2020-07-18 06:34:48,521 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:48,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:48,618 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:48,624 INFO L280 TraceCheckUtils]: 0: Hoare triple {1124#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1108#true} is VALID [2020-07-18 06:34:48,625 INFO L280 TraceCheckUtils]: 1: Hoare triple {1108#true} #valid := #valid[0 := 0]; {1108#true} is VALID [2020-07-18 06:34:48,625 INFO L280 TraceCheckUtils]: 2: Hoare triple {1108#true} assume 0 < #StackHeapBarrier; {1108#true} is VALID [2020-07-18 06:34:48,626 INFO L280 TraceCheckUtils]: 3: Hoare triple {1108#true} assume true; {1108#true} is VALID [2020-07-18 06:34:48,626 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1108#true} {1108#true} #231#return; {1108#true} is VALID [2020-07-18 06:34:48,629 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:48,635 INFO L280 TraceCheckUtils]: 0: Hoare triple {1108#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {1108#true} is VALID [2020-07-18 06:34:48,636 INFO L280 TraceCheckUtils]: 1: Hoare triple {1108#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {1108#true} is VALID [2020-07-18 06:34:48,636 INFO L280 TraceCheckUtils]: 2: Hoare triple {1108#true} ~n := #in~n; {1108#true} is VALID [2020-07-18 06:34:48,637 INFO L280 TraceCheckUtils]: 3: Hoare triple {1108#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {1108#true} is VALID [2020-07-18 06:34:48,637 INFO L280 TraceCheckUtils]: 4: Hoare triple {1108#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {1108#true} is VALID [2020-07-18 06:34:48,637 INFO L280 TraceCheckUtils]: 5: Hoare triple {1108#true} havoc #t~ret0.base, #t~ret0.offset; {1108#true} is VALID [2020-07-18 06:34:48,638 INFO L280 TraceCheckUtils]: 6: Hoare triple {1108#true} assume true; {1108#true} is VALID [2020-07-18 06:34:48,638 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {1108#true} {1109#false} #227#return; {1109#false} is VALID [2020-07-18 06:34:48,639 INFO L263 TraceCheckUtils]: 0: Hoare triple {1108#true} call ULTIMATE.init(); {1124#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:48,640 INFO L280 TraceCheckUtils]: 1: Hoare triple {1124#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1108#true} is VALID [2020-07-18 06:34:48,640 INFO L280 TraceCheckUtils]: 2: Hoare triple {1108#true} #valid := #valid[0 := 0]; {1108#true} is VALID [2020-07-18 06:34:48,641 INFO L280 TraceCheckUtils]: 3: Hoare triple {1108#true} assume 0 < #StackHeapBarrier; {1108#true} is VALID [2020-07-18 06:34:48,641 INFO L280 TraceCheckUtils]: 4: Hoare triple {1108#true} assume true; {1108#true} is VALID [2020-07-18 06:34:48,641 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1108#true} {1108#true} #231#return; {1108#true} is VALID [2020-07-18 06:34:48,642 INFO L263 TraceCheckUtils]: 6: Hoare triple {1108#true} call #t~ret23 := main(); {1108#true} is VALID [2020-07-18 06:34:48,642 INFO L280 TraceCheckUtils]: 7: Hoare triple {1108#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {1108#true} is VALID [2020-07-18 06:34:48,643 INFO L280 TraceCheckUtils]: 8: Hoare triple {1108#true} ~i~1 := 0; {1115#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:48,644 INFO L280 TraceCheckUtils]: 9: Hoare triple {1115#(= 0 main_~i~1)} assume !(~i~1 < 8); {1109#false} is VALID [2020-07-18 06:34:48,645 INFO L280 TraceCheckUtils]: 10: Hoare triple {1109#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {1109#false} is VALID [2020-07-18 06:34:48,645 INFO L263 TraceCheckUtils]: 11: Hoare triple {1109#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {1109#false} is VALID [2020-07-18 06:34:48,645 INFO L280 TraceCheckUtils]: 12: Hoare triple {1109#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {1109#false} is VALID [2020-07-18 06:34:48,646 INFO L280 TraceCheckUtils]: 13: Hoare triple {1109#false} ~start~0 := 0; {1109#false} is VALID [2020-07-18 06:34:48,646 INFO L280 TraceCheckUtils]: 14: Hoare triple {1109#false} ~i~0 := -1; {1109#false} is VALID [2020-07-18 06:34:48,646 INFO L280 TraceCheckUtils]: 15: Hoare triple {1109#false} ~j~0 := -1; {1109#false} is VALID [2020-07-18 06:34:48,647 INFO L280 TraceCheckUtils]: 16: Hoare triple {1109#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {1109#false} is VALID [2020-07-18 06:34:48,647 INFO L280 TraceCheckUtils]: 17: Hoare triple {1109#false} assume !(~str.base == 0 && ~str.offset == 0); {1109#false} is VALID [2020-07-18 06:34:48,647 INFO L280 TraceCheckUtils]: 18: Hoare triple {1109#false} #t~post2 := ~i~0; {1109#false} is VALID [2020-07-18 06:34:48,648 INFO L280 TraceCheckUtils]: 19: Hoare triple {1109#false} ~i~0 := 1 + #t~post2; {1109#false} is VALID [2020-07-18 06:34:48,648 INFO L280 TraceCheckUtils]: 20: Hoare triple {1109#false} havoc #t~post2; {1109#false} is VALID [2020-07-18 06:34:48,648 INFO L280 TraceCheckUtils]: 21: Hoare triple {1109#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {1109#false} is VALID [2020-07-18 06:34:48,649 INFO L280 TraceCheckUtils]: 22: Hoare triple {1109#false} #t~switch4 := 0 == #t~mem3; {1109#false} is VALID [2020-07-18 06:34:48,649 INFO L280 TraceCheckUtils]: 23: Hoare triple {1109#false} assume #t~switch4; {1109#false} is VALID [2020-07-18 06:34:48,649 INFO L280 TraceCheckUtils]: 24: Hoare triple {1109#false} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {1109#false} is VALID [2020-07-18 06:34:48,650 INFO L280 TraceCheckUtils]: 25: Hoare triple {1109#false} #t~short7 := 32 == #t~mem5; {1109#false} is VALID [2020-07-18 06:34:48,650 INFO L280 TraceCheckUtils]: 26: Hoare triple {1109#false} assume #t~short7; {1109#false} is VALID [2020-07-18 06:34:48,650 INFO L280 TraceCheckUtils]: 27: Hoare triple {1109#false} assume !#t~short7; {1109#false} is VALID [2020-07-18 06:34:48,651 INFO L280 TraceCheckUtils]: 28: Hoare triple {1109#false} havoc #t~short7; {1109#false} is VALID [2020-07-18 06:34:48,651 INFO L280 TraceCheckUtils]: 29: Hoare triple {1109#false} havoc #t~mem6; {1109#false} is VALID [2020-07-18 06:34:48,651 INFO L280 TraceCheckUtils]: 30: Hoare triple {1109#false} havoc #t~mem5; {1109#false} is VALID [2020-07-18 06:34:48,652 INFO L280 TraceCheckUtils]: 31: Hoare triple {1109#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {1109#false} is VALID [2020-07-18 06:34:48,652 INFO L280 TraceCheckUtils]: 32: Hoare triple {1109#false} assume !(34 == #t~mem9); {1109#false} is VALID [2020-07-18 06:34:48,652 INFO L280 TraceCheckUtils]: 33: Hoare triple {1109#false} havoc #t~mem9; {1109#false} is VALID [2020-07-18 06:34:48,653 INFO L280 TraceCheckUtils]: 34: Hoare triple {1109#false} ~j~0 := ~i~0 - 1; {1109#false} is VALID [2020-07-18 06:34:48,653 INFO L280 TraceCheckUtils]: 35: Hoare triple {1109#false} #t~short14 := 0 < ~j~0; {1109#false} is VALID [2020-07-18 06:34:48,653 INFO L280 TraceCheckUtils]: 36: Hoare triple {1109#false} assume !#t~short14; {1109#false} is VALID [2020-07-18 06:34:48,654 INFO L280 TraceCheckUtils]: 37: Hoare triple {1109#false} assume !#t~short14; {1109#false} is VALID [2020-07-18 06:34:48,654 INFO L280 TraceCheckUtils]: 38: Hoare triple {1109#false} havoc #t~short14; {1109#false} is VALID [2020-07-18 06:34:48,654 INFO L280 TraceCheckUtils]: 39: Hoare triple {1109#false} havoc #t~mem11; {1109#false} is VALID [2020-07-18 06:34:48,654 INFO L280 TraceCheckUtils]: 40: Hoare triple {1109#false} havoc #t~mem12; {1109#false} is VALID [2020-07-18 06:34:48,655 INFO L280 TraceCheckUtils]: 41: Hoare triple {1109#false} havoc #t~short13; {1109#false} is VALID [2020-07-18 06:34:48,655 INFO L280 TraceCheckUtils]: 42: Hoare triple {1109#false} #t~short17 := 0 < ~j~0; {1109#false} is VALID [2020-07-18 06:34:48,656 INFO L280 TraceCheckUtils]: 43: Hoare triple {1109#false} assume !#t~short17; {1109#false} is VALID [2020-07-18 06:34:48,656 INFO L280 TraceCheckUtils]: 44: Hoare triple {1109#false} assume !#t~short17; {1109#false} is VALID [2020-07-18 06:34:48,656 INFO L280 TraceCheckUtils]: 45: Hoare triple {1109#false} havoc #t~mem16; {1109#false} is VALID [2020-07-18 06:34:48,657 INFO L280 TraceCheckUtils]: 46: Hoare triple {1109#false} havoc #t~short17; {1109#false} is VALID [2020-07-18 06:34:48,657 INFO L280 TraceCheckUtils]: 47: Hoare triple {1109#false} assume ~start~0 <= ~j~0; {1109#false} is VALID [2020-07-18 06:34:48,657 INFO L280 TraceCheckUtils]: 48: Hoare triple {1109#false} assume !(1 + (~j~0 - ~start~0) >= 2); {1109#false} is VALID [2020-07-18 06:34:48,657 INFO L263 TraceCheckUtils]: 49: Hoare triple {1109#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {1108#true} is VALID [2020-07-18 06:34:48,658 INFO L280 TraceCheckUtils]: 50: Hoare triple {1108#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {1108#true} is VALID [2020-07-18 06:34:48,658 INFO L280 TraceCheckUtils]: 51: Hoare triple {1108#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {1108#true} is VALID [2020-07-18 06:34:48,659 INFO L280 TraceCheckUtils]: 52: Hoare triple {1108#true} ~n := #in~n; {1108#true} is VALID [2020-07-18 06:34:48,659 INFO L280 TraceCheckUtils]: 53: Hoare triple {1108#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {1108#true} is VALID [2020-07-18 06:34:48,659 INFO L280 TraceCheckUtils]: 54: Hoare triple {1108#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {1108#true} is VALID [2020-07-18 06:34:48,659 INFO L280 TraceCheckUtils]: 55: Hoare triple {1108#true} havoc #t~ret0.base, #t~ret0.offset; {1108#true} is VALID [2020-07-18 06:34:48,660 INFO L280 TraceCheckUtils]: 56: Hoare triple {1108#true} assume true; {1108#true} is VALID [2020-07-18 06:34:48,660 INFO L275 TraceCheckUtils]: 57: Hoare quadruple {1108#true} {1109#false} #227#return; {1109#false} is VALID [2020-07-18 06:34:48,660 INFO L280 TraceCheckUtils]: 58: Hoare triple {1109#false} havoc #t~ret19.base, #t~ret19.offset; {1109#false} is VALID [2020-07-18 06:34:48,661 INFO L263 TraceCheckUtils]: 59: Hoare triple {1109#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {1109#false} is VALID [2020-07-18 06:34:48,661 INFO L280 TraceCheckUtils]: 60: Hoare triple {1109#false} ~cond := #in~cond; {1109#false} is VALID [2020-07-18 06:34:48,661 INFO L280 TraceCheckUtils]: 61: Hoare triple {1109#false} assume 0 == ~cond; {1109#false} is VALID [2020-07-18 06:34:48,662 INFO L280 TraceCheckUtils]: 62: Hoare triple {1109#false} assume !false; {1109#false} is VALID [2020-07-18 06:34:48,667 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:48,668 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [681309201] [2020-07-18 06:34:48,668 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:34:48,668 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-18 06:34:48,669 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1918383089] [2020-07-18 06:34:48,671 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 63 [2020-07-18 06:34:48,672 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:48,672 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-18 06:34:48,743 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:48,744 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-18 06:34:48,744 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:48,745 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-18 06:34:48,745 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:34:48,745 INFO L87 Difference]: Start difference. First operand 111 states and 121 transitions. Second operand 4 states. [2020-07-18 06:34:49,426 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:49,427 INFO L93 Difference]: Finished difference Result 212 states and 232 transitions. [2020-07-18 06:34:49,427 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-18 06:34:49,427 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 63 [2020-07-18 06:34:49,428 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:49,428 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:34:49,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 232 transitions. [2020-07-18 06:34:49,435 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:34:49,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 232 transitions. [2020-07-18 06:34:49,442 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 232 transitions. [2020-07-18 06:34:49,696 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 232 edges. 232 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:49,703 INFO L225 Difference]: With dead ends: 212 [2020-07-18 06:34:49,703 INFO L226 Difference]: Without dead ends: 117 [2020-07-18 06:34:49,705 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:34:49,706 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 117 states. [2020-07-18 06:34:49,784 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 117 to 112. [2020-07-18 06:34:49,785 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:49,785 INFO L82 GeneralOperation]: Start isEquivalent. First operand 117 states. Second operand 112 states. [2020-07-18 06:34:49,785 INFO L74 IsIncluded]: Start isIncluded. First operand 117 states. Second operand 112 states. [2020-07-18 06:34:49,785 INFO L87 Difference]: Start difference. First operand 117 states. Second operand 112 states. [2020-07-18 06:34:49,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:49,792 INFO L93 Difference]: Finished difference Result 117 states and 127 transitions. [2020-07-18 06:34:49,792 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 127 transitions. [2020-07-18 06:34:49,794 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:49,794 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:49,794 INFO L74 IsIncluded]: Start isIncluded. First operand 112 states. Second operand 117 states. [2020-07-18 06:34:49,794 INFO L87 Difference]: Start difference. First operand 112 states. Second operand 117 states. [2020-07-18 06:34:49,800 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:49,801 INFO L93 Difference]: Finished difference Result 117 states and 127 transitions. [2020-07-18 06:34:49,801 INFO L276 IsEmpty]: Start isEmpty. Operand 117 states and 127 transitions. [2020-07-18 06:34:49,802 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:49,802 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:49,803 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:49,803 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:49,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 112 states. [2020-07-18 06:34:49,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 112 states to 112 states and 122 transitions. [2020-07-18 06:34:49,808 INFO L78 Accepts]: Start accepts. Automaton has 112 states and 122 transitions. Word has length 63 [2020-07-18 06:34:49,809 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:49,809 INFO L479 AbstractCegarLoop]: Abstraction has 112 states and 122 transitions. [2020-07-18 06:34:49,809 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-18 06:34:49,809 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 112 states and 122 transitions. [2020-07-18 06:34:49,981 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:49,981 INFO L276 IsEmpty]: Start isEmpty. Operand 112 states and 122 transitions. [2020-07-18 06:34:49,983 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2020-07-18 06:34:49,984 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:49,984 INFO L422 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, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:49,984 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-18 06:34:49,984 INFO L427 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:49,985 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:49,985 INFO L82 PathProgramCache]: Analyzing trace with hash 1210839627, now seen corresponding path program 1 times [2020-07-18 06:34:49,985 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:49,986 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1747010927] [2020-07-18 06:34:49,986 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:50,019 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:50,111 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:50,119 INFO L280 TraceCheckUtils]: 0: Hoare triple {2027#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2009#true} is VALID [2020-07-18 06:34:50,120 INFO L280 TraceCheckUtils]: 1: Hoare triple {2009#true} #valid := #valid[0 := 0]; {2009#true} is VALID [2020-07-18 06:34:50,120 INFO L280 TraceCheckUtils]: 2: Hoare triple {2009#true} assume 0 < #StackHeapBarrier; {2009#true} is VALID [2020-07-18 06:34:50,120 INFO L280 TraceCheckUtils]: 3: Hoare triple {2009#true} assume true; {2009#true} is VALID [2020-07-18 06:34:50,120 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2009#true} {2009#true} #231#return; {2009#true} is VALID [2020-07-18 06:34:50,123 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:50,136 INFO L280 TraceCheckUtils]: 0: Hoare triple {2009#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {2009#true} is VALID [2020-07-18 06:34:50,136 INFO L280 TraceCheckUtils]: 1: Hoare triple {2009#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {2009#true} is VALID [2020-07-18 06:34:50,136 INFO L280 TraceCheckUtils]: 2: Hoare triple {2009#true} ~n := #in~n; {2009#true} is VALID [2020-07-18 06:34:50,137 INFO L280 TraceCheckUtils]: 3: Hoare triple {2009#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {2009#true} is VALID [2020-07-18 06:34:50,137 INFO L280 TraceCheckUtils]: 4: Hoare triple {2009#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {2009#true} is VALID [2020-07-18 06:34:50,137 INFO L280 TraceCheckUtils]: 5: Hoare triple {2009#true} havoc #t~ret0.base, #t~ret0.offset; {2009#true} is VALID [2020-07-18 06:34:50,137 INFO L280 TraceCheckUtils]: 6: Hoare triple {2009#true} assume true; {2009#true} is VALID [2020-07-18 06:34:50,137 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {2009#true} {2010#false} #227#return; {2010#false} is VALID [2020-07-18 06:34:50,139 INFO L263 TraceCheckUtils]: 0: Hoare triple {2009#true} call ULTIMATE.init(); {2027#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:50,139 INFO L280 TraceCheckUtils]: 1: Hoare triple {2027#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2009#true} is VALID [2020-07-18 06:34:50,139 INFO L280 TraceCheckUtils]: 2: Hoare triple {2009#true} #valid := #valid[0 := 0]; {2009#true} is VALID [2020-07-18 06:34:50,139 INFO L280 TraceCheckUtils]: 3: Hoare triple {2009#true} assume 0 < #StackHeapBarrier; {2009#true} is VALID [2020-07-18 06:34:50,140 INFO L280 TraceCheckUtils]: 4: Hoare triple {2009#true} assume true; {2009#true} is VALID [2020-07-18 06:34:50,140 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2009#true} {2009#true} #231#return; {2009#true} is VALID [2020-07-18 06:34:50,140 INFO L263 TraceCheckUtils]: 6: Hoare triple {2009#true} call #t~ret23 := main(); {2009#true} is VALID [2020-07-18 06:34:50,141 INFO L280 TraceCheckUtils]: 7: Hoare triple {2009#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {2009#true} is VALID [2020-07-18 06:34:50,142 INFO L280 TraceCheckUtils]: 8: Hoare triple {2009#true} ~i~1 := 0; {2016#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:50,143 INFO L280 TraceCheckUtils]: 9: Hoare triple {2016#(= 0 main_~i~1)} assume !!(~i~1 < 8); {2016#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:50,144 INFO L280 TraceCheckUtils]: 10: Hoare triple {2016#(= 0 main_~i~1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {2016#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:50,145 INFO L280 TraceCheckUtils]: 11: Hoare triple {2016#(= 0 main_~i~1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {2016#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:50,146 INFO L280 TraceCheckUtils]: 12: Hoare triple {2016#(= 0 main_~i~1)} havoc #t~nondet21; {2016#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:50,147 INFO L280 TraceCheckUtils]: 13: Hoare triple {2016#(= 0 main_~i~1)} #t~post20 := ~i~1; {2017#(= 0 |main_#t~post20|)} is VALID [2020-07-18 06:34:50,148 INFO L280 TraceCheckUtils]: 14: Hoare triple {2017#(= 0 |main_#t~post20|)} ~i~1 := 1 + #t~post20; {2018#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:50,149 INFO L280 TraceCheckUtils]: 15: Hoare triple {2018#(<= main_~i~1 1)} havoc #t~post20; {2018#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:50,150 INFO L280 TraceCheckUtils]: 16: Hoare triple {2018#(<= main_~i~1 1)} assume !(~i~1 < 8); {2010#false} is VALID [2020-07-18 06:34:50,151 INFO L280 TraceCheckUtils]: 17: Hoare triple {2010#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {2010#false} is VALID [2020-07-18 06:34:50,151 INFO L263 TraceCheckUtils]: 18: Hoare triple {2010#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {2010#false} is VALID [2020-07-18 06:34:50,151 INFO L280 TraceCheckUtils]: 19: Hoare triple {2010#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {2010#false} is VALID [2020-07-18 06:34:50,152 INFO L280 TraceCheckUtils]: 20: Hoare triple {2010#false} ~start~0 := 0; {2010#false} is VALID [2020-07-18 06:34:50,152 INFO L280 TraceCheckUtils]: 21: Hoare triple {2010#false} ~i~0 := -1; {2010#false} is VALID [2020-07-18 06:34:50,152 INFO L280 TraceCheckUtils]: 22: Hoare triple {2010#false} ~j~0 := -1; {2010#false} is VALID [2020-07-18 06:34:50,152 INFO L280 TraceCheckUtils]: 23: Hoare triple {2010#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {2010#false} is VALID [2020-07-18 06:34:50,153 INFO L280 TraceCheckUtils]: 24: Hoare triple {2010#false} assume !(~str.base == 0 && ~str.offset == 0); {2010#false} is VALID [2020-07-18 06:34:50,153 INFO L280 TraceCheckUtils]: 25: Hoare triple {2010#false} #t~post2 := ~i~0; {2010#false} is VALID [2020-07-18 06:34:50,153 INFO L280 TraceCheckUtils]: 26: Hoare triple {2010#false} ~i~0 := 1 + #t~post2; {2010#false} is VALID [2020-07-18 06:34:50,154 INFO L280 TraceCheckUtils]: 27: Hoare triple {2010#false} havoc #t~post2; {2010#false} is VALID [2020-07-18 06:34:50,154 INFO L280 TraceCheckUtils]: 28: Hoare triple {2010#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {2010#false} is VALID [2020-07-18 06:34:50,154 INFO L280 TraceCheckUtils]: 29: Hoare triple {2010#false} #t~switch4 := 0 == #t~mem3; {2010#false} is VALID [2020-07-18 06:34:50,154 INFO L280 TraceCheckUtils]: 30: Hoare triple {2010#false} assume #t~switch4; {2010#false} is VALID [2020-07-18 06:34:50,155 INFO L280 TraceCheckUtils]: 31: Hoare triple {2010#false} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {2010#false} is VALID [2020-07-18 06:34:50,155 INFO L280 TraceCheckUtils]: 32: Hoare triple {2010#false} #t~short7 := 32 == #t~mem5; {2010#false} is VALID [2020-07-18 06:34:50,155 INFO L280 TraceCheckUtils]: 33: Hoare triple {2010#false} assume #t~short7; {2010#false} is VALID [2020-07-18 06:34:50,156 INFO L280 TraceCheckUtils]: 34: Hoare triple {2010#false} assume !#t~short7; {2010#false} is VALID [2020-07-18 06:34:50,156 INFO L280 TraceCheckUtils]: 35: Hoare triple {2010#false} havoc #t~short7; {2010#false} is VALID [2020-07-18 06:34:50,156 INFO L280 TraceCheckUtils]: 36: Hoare triple {2010#false} havoc #t~mem6; {2010#false} is VALID [2020-07-18 06:34:50,156 INFO L280 TraceCheckUtils]: 37: Hoare triple {2010#false} havoc #t~mem5; {2010#false} is VALID [2020-07-18 06:34:50,157 INFO L280 TraceCheckUtils]: 38: Hoare triple {2010#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {2010#false} is VALID [2020-07-18 06:34:50,157 INFO L280 TraceCheckUtils]: 39: Hoare triple {2010#false} assume !(34 == #t~mem9); {2010#false} is VALID [2020-07-18 06:34:50,157 INFO L280 TraceCheckUtils]: 40: Hoare triple {2010#false} havoc #t~mem9; {2010#false} is VALID [2020-07-18 06:34:50,158 INFO L280 TraceCheckUtils]: 41: Hoare triple {2010#false} ~j~0 := ~i~0 - 1; {2010#false} is VALID [2020-07-18 06:34:50,158 INFO L280 TraceCheckUtils]: 42: Hoare triple {2010#false} #t~short14 := 0 < ~j~0; {2010#false} is VALID [2020-07-18 06:34:50,158 INFO L280 TraceCheckUtils]: 43: Hoare triple {2010#false} assume !#t~short14; {2010#false} is VALID [2020-07-18 06:34:50,158 INFO L280 TraceCheckUtils]: 44: Hoare triple {2010#false} assume !#t~short14; {2010#false} is VALID [2020-07-18 06:34:50,159 INFO L280 TraceCheckUtils]: 45: Hoare triple {2010#false} havoc #t~short14; {2010#false} is VALID [2020-07-18 06:34:50,159 INFO L280 TraceCheckUtils]: 46: Hoare triple {2010#false} havoc #t~mem11; {2010#false} is VALID [2020-07-18 06:34:50,159 INFO L280 TraceCheckUtils]: 47: Hoare triple {2010#false} havoc #t~mem12; {2010#false} is VALID [2020-07-18 06:34:50,160 INFO L280 TraceCheckUtils]: 48: Hoare triple {2010#false} havoc #t~short13; {2010#false} is VALID [2020-07-18 06:34:50,160 INFO L280 TraceCheckUtils]: 49: Hoare triple {2010#false} #t~short17 := 0 < ~j~0; {2010#false} is VALID [2020-07-18 06:34:50,160 INFO L280 TraceCheckUtils]: 50: Hoare triple {2010#false} assume !#t~short17; {2010#false} is VALID [2020-07-18 06:34:50,161 INFO L280 TraceCheckUtils]: 51: Hoare triple {2010#false} assume !#t~short17; {2010#false} is VALID [2020-07-18 06:34:50,161 INFO L280 TraceCheckUtils]: 52: Hoare triple {2010#false} havoc #t~mem16; {2010#false} is VALID [2020-07-18 06:34:50,161 INFO L280 TraceCheckUtils]: 53: Hoare triple {2010#false} havoc #t~short17; {2010#false} is VALID [2020-07-18 06:34:50,162 INFO L280 TraceCheckUtils]: 54: Hoare triple {2010#false} assume ~start~0 <= ~j~0; {2010#false} is VALID [2020-07-18 06:34:50,162 INFO L280 TraceCheckUtils]: 55: Hoare triple {2010#false} assume !(1 + (~j~0 - ~start~0) >= 2); {2010#false} is VALID [2020-07-18 06:34:50,162 INFO L263 TraceCheckUtils]: 56: Hoare triple {2010#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {2009#true} is VALID [2020-07-18 06:34:50,162 INFO L280 TraceCheckUtils]: 57: Hoare triple {2009#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {2009#true} is VALID [2020-07-18 06:34:50,163 INFO L280 TraceCheckUtils]: 58: Hoare triple {2009#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {2009#true} is VALID [2020-07-18 06:34:50,163 INFO L280 TraceCheckUtils]: 59: Hoare triple {2009#true} ~n := #in~n; {2009#true} is VALID [2020-07-18 06:34:50,163 INFO L280 TraceCheckUtils]: 60: Hoare triple {2009#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {2009#true} is VALID [2020-07-18 06:34:50,164 INFO L280 TraceCheckUtils]: 61: Hoare triple {2009#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {2009#true} is VALID [2020-07-18 06:34:50,164 INFO L280 TraceCheckUtils]: 62: Hoare triple {2009#true} havoc #t~ret0.base, #t~ret0.offset; {2009#true} is VALID [2020-07-18 06:34:50,164 INFO L280 TraceCheckUtils]: 63: Hoare triple {2009#true} assume true; {2009#true} is VALID [2020-07-18 06:34:50,164 INFO L275 TraceCheckUtils]: 64: Hoare quadruple {2009#true} {2010#false} #227#return; {2010#false} is VALID [2020-07-18 06:34:50,165 INFO L280 TraceCheckUtils]: 65: Hoare triple {2010#false} havoc #t~ret19.base, #t~ret19.offset; {2010#false} is VALID [2020-07-18 06:34:50,165 INFO L263 TraceCheckUtils]: 66: Hoare triple {2010#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {2010#false} is VALID [2020-07-18 06:34:50,165 INFO L280 TraceCheckUtils]: 67: Hoare triple {2010#false} ~cond := #in~cond; {2010#false} is VALID [2020-07-18 06:34:50,165 INFO L280 TraceCheckUtils]: 68: Hoare triple {2010#false} assume 0 == ~cond; {2010#false} is VALID [2020-07-18 06:34:50,166 INFO L280 TraceCheckUtils]: 69: Hoare triple {2010#false} assume !false; {2010#false} is VALID [2020-07-18 06:34:50,172 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:50,172 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1747010927] [2020-07-18 06:34:50,173 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:50,173 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6] total 6 [2020-07-18 06:34:50,173 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [235070470] [2020-07-18 06:34:50,174 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 70 [2020-07-18 06:34:50,174 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:50,175 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-18 06:34:50,256 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:50,256 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-18 06:34:50,257 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:50,257 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-18 06:34:50,257 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2020-07-18 06:34:50,258 INFO L87 Difference]: Start difference. First operand 112 states and 122 transitions. Second operand 6 states. [2020-07-18 06:34:51,160 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:51,160 INFO L93 Difference]: Finished difference Result 219 states and 239 transitions. [2020-07-18 06:34:51,160 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2020-07-18 06:34:51,161 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 70 [2020-07-18 06:34:51,161 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:51,161 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-18 06:34:51,167 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 239 transitions. [2020-07-18 06:34:51,168 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-18 06:34:51,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 239 transitions. [2020-07-18 06:34:51,174 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 7 states and 239 transitions. [2020-07-18 06:34:51,457 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 239 edges. 239 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:51,464 INFO L225 Difference]: With dead ends: 219 [2020-07-18 06:34:51,465 INFO L226 Difference]: Without dead ends: 124 [2020-07-18 06:34:51,466 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:34:51,467 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 124 states. [2020-07-18 06:34:51,574 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 124 to 119. [2020-07-18 06:34:51,574 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:51,574 INFO L82 GeneralOperation]: Start isEquivalent. First operand 124 states. Second operand 119 states. [2020-07-18 06:34:51,575 INFO L74 IsIncluded]: Start isIncluded. First operand 124 states. Second operand 119 states. [2020-07-18 06:34:51,575 INFO L87 Difference]: Start difference. First operand 124 states. Second operand 119 states. [2020-07-18 06:34:51,584 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:51,584 INFO L93 Difference]: Finished difference Result 124 states and 134 transitions. [2020-07-18 06:34:51,585 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 134 transitions. [2020-07-18 06:34:51,585 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:51,585 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:51,586 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand 124 states. [2020-07-18 06:34:51,586 INFO L87 Difference]: Start difference. First operand 119 states. Second operand 124 states. [2020-07-18 06:34:51,594 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:51,595 INFO L93 Difference]: Finished difference Result 124 states and 134 transitions. [2020-07-18 06:34:51,595 INFO L276 IsEmpty]: Start isEmpty. Operand 124 states and 134 transitions. [2020-07-18 06:34:51,596 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:51,596 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:51,596 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:51,596 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:51,597 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 119 states. [2020-07-18 06:34:51,604 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 119 states to 119 states and 129 transitions. [2020-07-18 06:34:51,604 INFO L78 Accepts]: Start accepts. Automaton has 119 states and 129 transitions. Word has length 70 [2020-07-18 06:34:51,605 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:51,605 INFO L479 AbstractCegarLoop]: Abstraction has 119 states and 129 transitions. [2020-07-18 06:34:51,605 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-18 06:34:51,605 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 119 states and 129 transitions. [2020-07-18 06:34:51,730 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 129 edges. 129 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:51,731 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 129 transitions. [2020-07-18 06:34:51,732 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2020-07-18 06:34:51,732 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:51,732 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:51,733 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-18 06:34:51,733 INFO L427 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:51,733 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:51,734 INFO L82 PathProgramCache]: Analyzing trace with hash -257337495, now seen corresponding path program 2 times [2020-07-18 06:34:51,734 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:51,734 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [777037973] [2020-07-18 06:34:51,734 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:51,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:51,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:51,868 INFO L280 TraceCheckUtils]: 0: Hoare triple {2978#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2958#true} is VALID [2020-07-18 06:34:51,869 INFO L280 TraceCheckUtils]: 1: Hoare triple {2958#true} #valid := #valid[0 := 0]; {2958#true} is VALID [2020-07-18 06:34:51,869 INFO L280 TraceCheckUtils]: 2: Hoare triple {2958#true} assume 0 < #StackHeapBarrier; {2958#true} is VALID [2020-07-18 06:34:51,869 INFO L280 TraceCheckUtils]: 3: Hoare triple {2958#true} assume true; {2958#true} is VALID [2020-07-18 06:34:51,870 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {2958#true} {2958#true} #231#return; {2958#true} is VALID [2020-07-18 06:34:51,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:51,876 INFO L280 TraceCheckUtils]: 0: Hoare triple {2958#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {2958#true} is VALID [2020-07-18 06:34:51,877 INFO L280 TraceCheckUtils]: 1: Hoare triple {2958#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {2958#true} is VALID [2020-07-18 06:34:51,877 INFO L280 TraceCheckUtils]: 2: Hoare triple {2958#true} ~n := #in~n; {2958#true} is VALID [2020-07-18 06:34:51,878 INFO L280 TraceCheckUtils]: 3: Hoare triple {2958#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {2958#true} is VALID [2020-07-18 06:34:51,878 INFO L280 TraceCheckUtils]: 4: Hoare triple {2958#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {2958#true} is VALID [2020-07-18 06:34:51,878 INFO L280 TraceCheckUtils]: 5: Hoare triple {2958#true} havoc #t~ret0.base, #t~ret0.offset; {2958#true} is VALID [2020-07-18 06:34:51,879 INFO L280 TraceCheckUtils]: 6: Hoare triple {2958#true} assume true; {2958#true} is VALID [2020-07-18 06:34:51,879 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {2958#true} {2959#false} #227#return; {2959#false} is VALID [2020-07-18 06:34:51,880 INFO L263 TraceCheckUtils]: 0: Hoare triple {2958#true} call ULTIMATE.init(); {2978#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:51,881 INFO L280 TraceCheckUtils]: 1: Hoare triple {2978#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {2958#true} is VALID [2020-07-18 06:34:51,881 INFO L280 TraceCheckUtils]: 2: Hoare triple {2958#true} #valid := #valid[0 := 0]; {2958#true} is VALID [2020-07-18 06:34:51,881 INFO L280 TraceCheckUtils]: 3: Hoare triple {2958#true} assume 0 < #StackHeapBarrier; {2958#true} is VALID [2020-07-18 06:34:51,882 INFO L280 TraceCheckUtils]: 4: Hoare triple {2958#true} assume true; {2958#true} is VALID [2020-07-18 06:34:51,882 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {2958#true} {2958#true} #231#return; {2958#true} is VALID [2020-07-18 06:34:51,882 INFO L263 TraceCheckUtils]: 6: Hoare triple {2958#true} call #t~ret23 := main(); {2958#true} is VALID [2020-07-18 06:34:51,883 INFO L280 TraceCheckUtils]: 7: Hoare triple {2958#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {2958#true} is VALID [2020-07-18 06:34:51,885 INFO L280 TraceCheckUtils]: 8: Hoare triple {2958#true} ~i~1 := 0; {2965#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:51,889 INFO L280 TraceCheckUtils]: 9: Hoare triple {2965#(= 0 main_~i~1)} assume !!(~i~1 < 8); {2965#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:51,889 INFO L280 TraceCheckUtils]: 10: Hoare triple {2965#(= 0 main_~i~1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {2965#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:51,890 INFO L280 TraceCheckUtils]: 11: Hoare triple {2965#(= 0 main_~i~1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {2965#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:51,891 INFO L280 TraceCheckUtils]: 12: Hoare triple {2965#(= 0 main_~i~1)} havoc #t~nondet21; {2965#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:51,892 INFO L280 TraceCheckUtils]: 13: Hoare triple {2965#(= 0 main_~i~1)} #t~post20 := ~i~1; {2966#(= 0 |main_#t~post20|)} is VALID [2020-07-18 06:34:51,893 INFO L280 TraceCheckUtils]: 14: Hoare triple {2966#(= 0 |main_#t~post20|)} ~i~1 := 1 + #t~post20; {2967#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:51,897 INFO L280 TraceCheckUtils]: 15: Hoare triple {2967#(<= main_~i~1 1)} havoc #t~post20; {2967#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:51,899 INFO L280 TraceCheckUtils]: 16: Hoare triple {2967#(<= main_~i~1 1)} assume !!(~i~1 < 8); {2967#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:51,900 INFO L280 TraceCheckUtils]: 17: Hoare triple {2967#(<= main_~i~1 1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {2967#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:51,903 INFO L280 TraceCheckUtils]: 18: Hoare triple {2967#(<= main_~i~1 1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {2967#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:51,904 INFO L280 TraceCheckUtils]: 19: Hoare triple {2967#(<= main_~i~1 1)} havoc #t~nondet21; {2967#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:51,905 INFO L280 TraceCheckUtils]: 20: Hoare triple {2967#(<= main_~i~1 1)} #t~post20 := ~i~1; {2968#(<= |main_#t~post20| 1)} is VALID [2020-07-18 06:34:51,906 INFO L280 TraceCheckUtils]: 21: Hoare triple {2968#(<= |main_#t~post20| 1)} ~i~1 := 1 + #t~post20; {2969#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:51,907 INFO L280 TraceCheckUtils]: 22: Hoare triple {2969#(<= main_~i~1 2)} havoc #t~post20; {2969#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:51,909 INFO L280 TraceCheckUtils]: 23: Hoare triple {2969#(<= main_~i~1 2)} assume !(~i~1 < 8); {2959#false} is VALID [2020-07-18 06:34:51,909 INFO L280 TraceCheckUtils]: 24: Hoare triple {2959#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {2959#false} is VALID [2020-07-18 06:34:51,910 INFO L263 TraceCheckUtils]: 25: Hoare triple {2959#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {2959#false} is VALID [2020-07-18 06:34:51,910 INFO L280 TraceCheckUtils]: 26: Hoare triple {2959#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {2959#false} is VALID [2020-07-18 06:34:51,910 INFO L280 TraceCheckUtils]: 27: Hoare triple {2959#false} ~start~0 := 0; {2959#false} is VALID [2020-07-18 06:34:51,911 INFO L280 TraceCheckUtils]: 28: Hoare triple {2959#false} ~i~0 := -1; {2959#false} is VALID [2020-07-18 06:34:51,911 INFO L280 TraceCheckUtils]: 29: Hoare triple {2959#false} ~j~0 := -1; {2959#false} is VALID [2020-07-18 06:34:51,911 INFO L280 TraceCheckUtils]: 30: Hoare triple {2959#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {2959#false} is VALID [2020-07-18 06:34:51,911 INFO L280 TraceCheckUtils]: 31: Hoare triple {2959#false} assume !(~str.base == 0 && ~str.offset == 0); {2959#false} is VALID [2020-07-18 06:34:51,912 INFO L280 TraceCheckUtils]: 32: Hoare triple {2959#false} #t~post2 := ~i~0; {2959#false} is VALID [2020-07-18 06:34:51,912 INFO L280 TraceCheckUtils]: 33: Hoare triple {2959#false} ~i~0 := 1 + #t~post2; {2959#false} is VALID [2020-07-18 06:34:51,912 INFO L280 TraceCheckUtils]: 34: Hoare triple {2959#false} havoc #t~post2; {2959#false} is VALID [2020-07-18 06:34:51,912 INFO L280 TraceCheckUtils]: 35: Hoare triple {2959#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {2959#false} is VALID [2020-07-18 06:34:51,913 INFO L280 TraceCheckUtils]: 36: Hoare triple {2959#false} #t~switch4 := 0 == #t~mem3; {2959#false} is VALID [2020-07-18 06:34:51,913 INFO L280 TraceCheckUtils]: 37: Hoare triple {2959#false} assume #t~switch4; {2959#false} is VALID [2020-07-18 06:34:51,913 INFO L280 TraceCheckUtils]: 38: Hoare triple {2959#false} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {2959#false} is VALID [2020-07-18 06:34:51,913 INFO L280 TraceCheckUtils]: 39: Hoare triple {2959#false} #t~short7 := 32 == #t~mem5; {2959#false} is VALID [2020-07-18 06:34:51,914 INFO L280 TraceCheckUtils]: 40: Hoare triple {2959#false} assume #t~short7; {2959#false} is VALID [2020-07-18 06:34:51,914 INFO L280 TraceCheckUtils]: 41: Hoare triple {2959#false} assume !#t~short7; {2959#false} is VALID [2020-07-18 06:34:51,914 INFO L280 TraceCheckUtils]: 42: Hoare triple {2959#false} havoc #t~short7; {2959#false} is VALID [2020-07-18 06:34:51,914 INFO L280 TraceCheckUtils]: 43: Hoare triple {2959#false} havoc #t~mem6; {2959#false} is VALID [2020-07-18 06:34:51,915 INFO L280 TraceCheckUtils]: 44: Hoare triple {2959#false} havoc #t~mem5; {2959#false} is VALID [2020-07-18 06:34:51,915 INFO L280 TraceCheckUtils]: 45: Hoare triple {2959#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {2959#false} is VALID [2020-07-18 06:34:51,915 INFO L280 TraceCheckUtils]: 46: Hoare triple {2959#false} assume !(34 == #t~mem9); {2959#false} is VALID [2020-07-18 06:34:51,915 INFO L280 TraceCheckUtils]: 47: Hoare triple {2959#false} havoc #t~mem9; {2959#false} is VALID [2020-07-18 06:34:51,916 INFO L280 TraceCheckUtils]: 48: Hoare triple {2959#false} ~j~0 := ~i~0 - 1; {2959#false} is VALID [2020-07-18 06:34:51,916 INFO L280 TraceCheckUtils]: 49: Hoare triple {2959#false} #t~short14 := 0 < ~j~0; {2959#false} is VALID [2020-07-18 06:34:51,916 INFO L280 TraceCheckUtils]: 50: Hoare triple {2959#false} assume !#t~short14; {2959#false} is VALID [2020-07-18 06:34:51,916 INFO L280 TraceCheckUtils]: 51: Hoare triple {2959#false} assume !#t~short14; {2959#false} is VALID [2020-07-18 06:34:51,916 INFO L280 TraceCheckUtils]: 52: Hoare triple {2959#false} havoc #t~short14; {2959#false} is VALID [2020-07-18 06:34:51,917 INFO L280 TraceCheckUtils]: 53: Hoare triple {2959#false} havoc #t~mem11; {2959#false} is VALID [2020-07-18 06:34:51,917 INFO L280 TraceCheckUtils]: 54: Hoare triple {2959#false} havoc #t~mem12; {2959#false} is VALID [2020-07-18 06:34:51,917 INFO L280 TraceCheckUtils]: 55: Hoare triple {2959#false} havoc #t~short13; {2959#false} is VALID [2020-07-18 06:34:51,917 INFO L280 TraceCheckUtils]: 56: Hoare triple {2959#false} #t~short17 := 0 < ~j~0; {2959#false} is VALID [2020-07-18 06:34:51,918 INFO L280 TraceCheckUtils]: 57: Hoare triple {2959#false} assume !#t~short17; {2959#false} is VALID [2020-07-18 06:34:51,918 INFO L280 TraceCheckUtils]: 58: Hoare triple {2959#false} assume !#t~short17; {2959#false} is VALID [2020-07-18 06:34:51,918 INFO L280 TraceCheckUtils]: 59: Hoare triple {2959#false} havoc #t~mem16; {2959#false} is VALID [2020-07-18 06:34:51,919 INFO L280 TraceCheckUtils]: 60: Hoare triple {2959#false} havoc #t~short17; {2959#false} is VALID [2020-07-18 06:34:51,919 INFO L280 TraceCheckUtils]: 61: Hoare triple {2959#false} assume ~start~0 <= ~j~0; {2959#false} is VALID [2020-07-18 06:34:51,919 INFO L280 TraceCheckUtils]: 62: Hoare triple {2959#false} assume !(1 + (~j~0 - ~start~0) >= 2); {2959#false} is VALID [2020-07-18 06:34:51,919 INFO L263 TraceCheckUtils]: 63: Hoare triple {2959#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {2958#true} is VALID [2020-07-18 06:34:51,920 INFO L280 TraceCheckUtils]: 64: Hoare triple {2958#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {2958#true} is VALID [2020-07-18 06:34:51,920 INFO L280 TraceCheckUtils]: 65: Hoare triple {2958#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {2958#true} is VALID [2020-07-18 06:34:51,920 INFO L280 TraceCheckUtils]: 66: Hoare triple {2958#true} ~n := #in~n; {2958#true} is VALID [2020-07-18 06:34:51,921 INFO L280 TraceCheckUtils]: 67: Hoare triple {2958#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {2958#true} is VALID [2020-07-18 06:34:51,921 INFO L280 TraceCheckUtils]: 68: Hoare triple {2958#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {2958#true} is VALID [2020-07-18 06:34:51,921 INFO L280 TraceCheckUtils]: 69: Hoare triple {2958#true} havoc #t~ret0.base, #t~ret0.offset; {2958#true} is VALID [2020-07-18 06:34:51,921 INFO L280 TraceCheckUtils]: 70: Hoare triple {2958#true} assume true; {2958#true} is VALID [2020-07-18 06:34:51,922 INFO L275 TraceCheckUtils]: 71: Hoare quadruple {2958#true} {2959#false} #227#return; {2959#false} is VALID [2020-07-18 06:34:51,922 INFO L280 TraceCheckUtils]: 72: Hoare triple {2959#false} havoc #t~ret19.base, #t~ret19.offset; {2959#false} is VALID [2020-07-18 06:34:51,922 INFO L263 TraceCheckUtils]: 73: Hoare triple {2959#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {2959#false} is VALID [2020-07-18 06:34:51,923 INFO L280 TraceCheckUtils]: 74: Hoare triple {2959#false} ~cond := #in~cond; {2959#false} is VALID [2020-07-18 06:34:51,923 INFO L280 TraceCheckUtils]: 75: Hoare triple {2959#false} assume 0 == ~cond; {2959#false} is VALID [2020-07-18 06:34:51,923 INFO L280 TraceCheckUtils]: 76: Hoare triple {2959#false} assume !false; {2959#false} is VALID [2020-07-18 06:34:51,928 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:51,928 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [777037973] [2020-07-18 06:34:51,929 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:51,929 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2020-07-18 06:34:51,929 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1318559064] [2020-07-18 06:34:51,930 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 77 [2020-07-18 06:34:51,930 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:51,930 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-18 06:34:52,015 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:52,015 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-18 06:34:52,015 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:52,016 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-18 06:34:52,016 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=17, Invalid=39, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:34:52,016 INFO L87 Difference]: Start difference. First operand 119 states and 129 transitions. Second operand 8 states. [2020-07-18 06:34:53,124 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:53,124 INFO L93 Difference]: Finished difference Result 226 states and 246 transitions. [2020-07-18 06:34:53,124 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2020-07-18 06:34:53,124 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 77 [2020-07-18 06:34:53,125 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:53,125 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:34:53,130 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 246 transitions. [2020-07-18 06:34:53,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:34:53,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 246 transitions. [2020-07-18 06:34:53,135 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 246 transitions. [2020-07-18 06:34:53,399 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 246 edges. 246 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:53,403 INFO L225 Difference]: With dead ends: 226 [2020-07-18 06:34:53,403 INFO L226 Difference]: Without dead ends: 131 [2020-07-18 06:34:53,404 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=45, Invalid=87, Unknown=0, NotChecked=0, Total=132 [2020-07-18 06:34:53,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 131 states. [2020-07-18 06:34:53,516 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 131 to 126. [2020-07-18 06:34:53,517 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:53,517 INFO L82 GeneralOperation]: Start isEquivalent. First operand 131 states. Second operand 126 states. [2020-07-18 06:34:53,517 INFO L74 IsIncluded]: Start isIncluded. First operand 131 states. Second operand 126 states. [2020-07-18 06:34:53,517 INFO L87 Difference]: Start difference. First operand 131 states. Second operand 126 states. [2020-07-18 06:34:53,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:53,523 INFO L93 Difference]: Finished difference Result 131 states and 141 transitions. [2020-07-18 06:34:53,523 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 141 transitions. [2020-07-18 06:34:53,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:53,524 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:53,524 INFO L74 IsIncluded]: Start isIncluded. First operand 126 states. Second operand 131 states. [2020-07-18 06:34:53,524 INFO L87 Difference]: Start difference. First operand 126 states. Second operand 131 states. [2020-07-18 06:34:53,529 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:53,529 INFO L93 Difference]: Finished difference Result 131 states and 141 transitions. [2020-07-18 06:34:53,530 INFO L276 IsEmpty]: Start isEmpty. Operand 131 states and 141 transitions. [2020-07-18 06:34:53,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:53,531 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:53,531 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:53,531 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:53,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 126 states. [2020-07-18 06:34:53,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 126 states to 126 states and 136 transitions. [2020-07-18 06:34:53,536 INFO L78 Accepts]: Start accepts. Automaton has 126 states and 136 transitions. Word has length 77 [2020-07-18 06:34:53,536 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:53,536 INFO L479 AbstractCegarLoop]: Abstraction has 126 states and 136 transitions. [2020-07-18 06:34:53,536 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-18 06:34:53,536 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 126 states and 136 transitions. [2020-07-18 06:34:53,692 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 136 edges. 136 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:53,693 INFO L276 IsEmpty]: Start isEmpty. Operand 126 states and 136 transitions. [2020-07-18 06:34:53,694 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 85 [2020-07-18 06:34:53,695 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:53,695 INFO L422 BasicCegarLoop]: trace histogram [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, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:34:53,695 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-18 06:34:53,695 INFO L427 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:53,696 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:53,696 INFO L82 PathProgramCache]: Analyzing trace with hash 883135627, now seen corresponding path program 3 times [2020-07-18 06:34:53,696 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:53,697 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [468405199] [2020-07-18 06:34:53,697 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:53,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:53,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:53,895 INFO L280 TraceCheckUtils]: 0: Hoare triple {3977#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3955#true} is VALID [2020-07-18 06:34:53,896 INFO L280 TraceCheckUtils]: 1: Hoare triple {3955#true} #valid := #valid[0 := 0]; {3955#true} is VALID [2020-07-18 06:34:53,896 INFO L280 TraceCheckUtils]: 2: Hoare triple {3955#true} assume 0 < #StackHeapBarrier; {3955#true} is VALID [2020-07-18 06:34:53,896 INFO L280 TraceCheckUtils]: 3: Hoare triple {3955#true} assume true; {3955#true} is VALID [2020-07-18 06:34:53,897 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3955#true} {3955#true} #231#return; {3955#true} is VALID [2020-07-18 06:34:53,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:53,904 INFO L280 TraceCheckUtils]: 0: Hoare triple {3955#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {3955#true} is VALID [2020-07-18 06:34:53,905 INFO L280 TraceCheckUtils]: 1: Hoare triple {3955#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {3955#true} is VALID [2020-07-18 06:34:53,905 INFO L280 TraceCheckUtils]: 2: Hoare triple {3955#true} ~n := #in~n; {3955#true} is VALID [2020-07-18 06:34:53,905 INFO L280 TraceCheckUtils]: 3: Hoare triple {3955#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {3955#true} is VALID [2020-07-18 06:34:53,906 INFO L280 TraceCheckUtils]: 4: Hoare triple {3955#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {3955#true} is VALID [2020-07-18 06:34:53,906 INFO L280 TraceCheckUtils]: 5: Hoare triple {3955#true} havoc #t~ret0.base, #t~ret0.offset; {3955#true} is VALID [2020-07-18 06:34:53,906 INFO L280 TraceCheckUtils]: 6: Hoare triple {3955#true} assume true; {3955#true} is VALID [2020-07-18 06:34:53,907 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {3955#true} {3956#false} #227#return; {3956#false} is VALID [2020-07-18 06:34:53,908 INFO L263 TraceCheckUtils]: 0: Hoare triple {3955#true} call ULTIMATE.init(); {3977#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:53,908 INFO L280 TraceCheckUtils]: 1: Hoare triple {3977#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3955#true} is VALID [2020-07-18 06:34:53,908 INFO L280 TraceCheckUtils]: 2: Hoare triple {3955#true} #valid := #valid[0 := 0]; {3955#true} is VALID [2020-07-18 06:34:53,908 INFO L280 TraceCheckUtils]: 3: Hoare triple {3955#true} assume 0 < #StackHeapBarrier; {3955#true} is VALID [2020-07-18 06:34:53,909 INFO L280 TraceCheckUtils]: 4: Hoare triple {3955#true} assume true; {3955#true} is VALID [2020-07-18 06:34:53,909 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {3955#true} {3955#true} #231#return; {3955#true} is VALID [2020-07-18 06:34:53,909 INFO L263 TraceCheckUtils]: 6: Hoare triple {3955#true} call #t~ret23 := main(); {3955#true} is VALID [2020-07-18 06:34:53,909 INFO L280 TraceCheckUtils]: 7: Hoare triple {3955#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {3955#true} is VALID [2020-07-18 06:34:53,910 INFO L280 TraceCheckUtils]: 8: Hoare triple {3955#true} ~i~1 := 0; {3962#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:53,910 INFO L280 TraceCheckUtils]: 9: Hoare triple {3962#(= 0 main_~i~1)} assume !!(~i~1 < 8); {3962#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:53,911 INFO L280 TraceCheckUtils]: 10: Hoare triple {3962#(= 0 main_~i~1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {3962#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:53,911 INFO L280 TraceCheckUtils]: 11: Hoare triple {3962#(= 0 main_~i~1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {3962#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:53,912 INFO L280 TraceCheckUtils]: 12: Hoare triple {3962#(= 0 main_~i~1)} havoc #t~nondet21; {3962#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:53,913 INFO L280 TraceCheckUtils]: 13: Hoare triple {3962#(= 0 main_~i~1)} #t~post20 := ~i~1; {3963#(= 0 |main_#t~post20|)} is VALID [2020-07-18 06:34:53,914 INFO L280 TraceCheckUtils]: 14: Hoare triple {3963#(= 0 |main_#t~post20|)} ~i~1 := 1 + #t~post20; {3964#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:53,917 INFO L280 TraceCheckUtils]: 15: Hoare triple {3964#(<= main_~i~1 1)} havoc #t~post20; {3964#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:53,919 INFO L280 TraceCheckUtils]: 16: Hoare triple {3964#(<= main_~i~1 1)} assume !!(~i~1 < 8); {3964#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:53,919 INFO L280 TraceCheckUtils]: 17: Hoare triple {3964#(<= main_~i~1 1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {3964#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:53,920 INFO L280 TraceCheckUtils]: 18: Hoare triple {3964#(<= main_~i~1 1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {3964#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:53,921 INFO L280 TraceCheckUtils]: 19: Hoare triple {3964#(<= main_~i~1 1)} havoc #t~nondet21; {3964#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:53,921 INFO L280 TraceCheckUtils]: 20: Hoare triple {3964#(<= main_~i~1 1)} #t~post20 := ~i~1; {3965#(<= |main_#t~post20| 1)} is VALID [2020-07-18 06:34:53,922 INFO L280 TraceCheckUtils]: 21: Hoare triple {3965#(<= |main_#t~post20| 1)} ~i~1 := 1 + #t~post20; {3966#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:53,922 INFO L280 TraceCheckUtils]: 22: Hoare triple {3966#(<= main_~i~1 2)} havoc #t~post20; {3966#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:53,923 INFO L280 TraceCheckUtils]: 23: Hoare triple {3966#(<= main_~i~1 2)} assume !!(~i~1 < 8); {3966#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:53,923 INFO L280 TraceCheckUtils]: 24: Hoare triple {3966#(<= main_~i~1 2)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {3966#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:53,923 INFO L280 TraceCheckUtils]: 25: Hoare triple {3966#(<= main_~i~1 2)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {3966#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:53,924 INFO L280 TraceCheckUtils]: 26: Hoare triple {3966#(<= main_~i~1 2)} havoc #t~nondet21; {3966#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:53,930 INFO L280 TraceCheckUtils]: 27: Hoare triple {3966#(<= main_~i~1 2)} #t~post20 := ~i~1; {3967#(<= |main_#t~post20| 2)} is VALID [2020-07-18 06:34:53,932 INFO L280 TraceCheckUtils]: 28: Hoare triple {3967#(<= |main_#t~post20| 2)} ~i~1 := 1 + #t~post20; {3968#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:53,932 INFO L280 TraceCheckUtils]: 29: Hoare triple {3968#(<= main_~i~1 3)} havoc #t~post20; {3968#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:53,933 INFO L280 TraceCheckUtils]: 30: Hoare triple {3968#(<= main_~i~1 3)} assume !(~i~1 < 8); {3956#false} is VALID [2020-07-18 06:34:53,933 INFO L280 TraceCheckUtils]: 31: Hoare triple {3956#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {3956#false} is VALID [2020-07-18 06:34:53,934 INFO L263 TraceCheckUtils]: 32: Hoare triple {3956#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {3956#false} is VALID [2020-07-18 06:34:53,934 INFO L280 TraceCheckUtils]: 33: Hoare triple {3956#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {3956#false} is VALID [2020-07-18 06:34:53,934 INFO L280 TraceCheckUtils]: 34: Hoare triple {3956#false} ~start~0 := 0; {3956#false} is VALID [2020-07-18 06:34:53,934 INFO L280 TraceCheckUtils]: 35: Hoare triple {3956#false} ~i~0 := -1; {3956#false} is VALID [2020-07-18 06:34:53,934 INFO L280 TraceCheckUtils]: 36: Hoare triple {3956#false} ~j~0 := -1; {3956#false} is VALID [2020-07-18 06:34:53,934 INFO L280 TraceCheckUtils]: 37: Hoare triple {3956#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {3956#false} is VALID [2020-07-18 06:34:53,935 INFO L280 TraceCheckUtils]: 38: Hoare triple {3956#false} assume !(~str.base == 0 && ~str.offset == 0); {3956#false} is VALID [2020-07-18 06:34:53,935 INFO L280 TraceCheckUtils]: 39: Hoare triple {3956#false} #t~post2 := ~i~0; {3956#false} is VALID [2020-07-18 06:34:53,935 INFO L280 TraceCheckUtils]: 40: Hoare triple {3956#false} ~i~0 := 1 + #t~post2; {3956#false} is VALID [2020-07-18 06:34:53,935 INFO L280 TraceCheckUtils]: 41: Hoare triple {3956#false} havoc #t~post2; {3956#false} is VALID [2020-07-18 06:34:53,935 INFO L280 TraceCheckUtils]: 42: Hoare triple {3956#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {3956#false} is VALID [2020-07-18 06:34:53,936 INFO L280 TraceCheckUtils]: 43: Hoare triple {3956#false} #t~switch4 := 0 == #t~mem3; {3956#false} is VALID [2020-07-18 06:34:53,936 INFO L280 TraceCheckUtils]: 44: Hoare triple {3956#false} assume #t~switch4; {3956#false} is VALID [2020-07-18 06:34:53,936 INFO L280 TraceCheckUtils]: 45: Hoare triple {3956#false} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {3956#false} is VALID [2020-07-18 06:34:53,936 INFO L280 TraceCheckUtils]: 46: Hoare triple {3956#false} #t~short7 := 32 == #t~mem5; {3956#false} is VALID [2020-07-18 06:34:53,936 INFO L280 TraceCheckUtils]: 47: Hoare triple {3956#false} assume #t~short7; {3956#false} is VALID [2020-07-18 06:34:53,936 INFO L280 TraceCheckUtils]: 48: Hoare triple {3956#false} assume !#t~short7; {3956#false} is VALID [2020-07-18 06:34:53,937 INFO L280 TraceCheckUtils]: 49: Hoare triple {3956#false} havoc #t~short7; {3956#false} is VALID [2020-07-18 06:34:53,937 INFO L280 TraceCheckUtils]: 50: Hoare triple {3956#false} havoc #t~mem6; {3956#false} is VALID [2020-07-18 06:34:53,937 INFO L280 TraceCheckUtils]: 51: Hoare triple {3956#false} havoc #t~mem5; {3956#false} is VALID [2020-07-18 06:34:53,937 INFO L280 TraceCheckUtils]: 52: Hoare triple {3956#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {3956#false} is VALID [2020-07-18 06:34:53,937 INFO L280 TraceCheckUtils]: 53: Hoare triple {3956#false} assume !(34 == #t~mem9); {3956#false} is VALID [2020-07-18 06:34:53,937 INFO L280 TraceCheckUtils]: 54: Hoare triple {3956#false} havoc #t~mem9; {3956#false} is VALID [2020-07-18 06:34:53,938 INFO L280 TraceCheckUtils]: 55: Hoare triple {3956#false} ~j~0 := ~i~0 - 1; {3956#false} is VALID [2020-07-18 06:34:53,938 INFO L280 TraceCheckUtils]: 56: Hoare triple {3956#false} #t~short14 := 0 < ~j~0; {3956#false} is VALID [2020-07-18 06:34:53,938 INFO L280 TraceCheckUtils]: 57: Hoare triple {3956#false} assume !#t~short14; {3956#false} is VALID [2020-07-18 06:34:53,938 INFO L280 TraceCheckUtils]: 58: Hoare triple {3956#false} assume !#t~short14; {3956#false} is VALID [2020-07-18 06:34:53,938 INFO L280 TraceCheckUtils]: 59: Hoare triple {3956#false} havoc #t~short14; {3956#false} is VALID [2020-07-18 06:34:53,939 INFO L280 TraceCheckUtils]: 60: Hoare triple {3956#false} havoc #t~mem11; {3956#false} is VALID [2020-07-18 06:34:53,939 INFO L280 TraceCheckUtils]: 61: Hoare triple {3956#false} havoc #t~mem12; {3956#false} is VALID [2020-07-18 06:34:53,939 INFO L280 TraceCheckUtils]: 62: Hoare triple {3956#false} havoc #t~short13; {3956#false} is VALID [2020-07-18 06:34:53,939 INFO L280 TraceCheckUtils]: 63: Hoare triple {3956#false} #t~short17 := 0 < ~j~0; {3956#false} is VALID [2020-07-18 06:34:53,940 INFO L280 TraceCheckUtils]: 64: Hoare triple {3956#false} assume !#t~short17; {3956#false} is VALID [2020-07-18 06:34:53,940 INFO L280 TraceCheckUtils]: 65: Hoare triple {3956#false} assume !#t~short17; {3956#false} is VALID [2020-07-18 06:34:53,940 INFO L280 TraceCheckUtils]: 66: Hoare triple {3956#false} havoc #t~mem16; {3956#false} is VALID [2020-07-18 06:34:53,940 INFO L280 TraceCheckUtils]: 67: Hoare triple {3956#false} havoc #t~short17; {3956#false} is VALID [2020-07-18 06:34:53,940 INFO L280 TraceCheckUtils]: 68: Hoare triple {3956#false} assume ~start~0 <= ~j~0; {3956#false} is VALID [2020-07-18 06:34:53,940 INFO L280 TraceCheckUtils]: 69: Hoare triple {3956#false} assume !(1 + (~j~0 - ~start~0) >= 2); {3956#false} is VALID [2020-07-18 06:34:53,941 INFO L263 TraceCheckUtils]: 70: Hoare triple {3956#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {3955#true} is VALID [2020-07-18 06:34:53,941 INFO L280 TraceCheckUtils]: 71: Hoare triple {3955#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {3955#true} is VALID [2020-07-18 06:34:53,941 INFO L280 TraceCheckUtils]: 72: Hoare triple {3955#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {3955#true} is VALID [2020-07-18 06:34:53,941 INFO L280 TraceCheckUtils]: 73: Hoare triple {3955#true} ~n := #in~n; {3955#true} is VALID [2020-07-18 06:34:53,941 INFO L280 TraceCheckUtils]: 74: Hoare triple {3955#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {3955#true} is VALID [2020-07-18 06:34:53,941 INFO L280 TraceCheckUtils]: 75: Hoare triple {3955#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {3955#true} is VALID [2020-07-18 06:34:53,942 INFO L280 TraceCheckUtils]: 76: Hoare triple {3955#true} havoc #t~ret0.base, #t~ret0.offset; {3955#true} is VALID [2020-07-18 06:34:53,942 INFO L280 TraceCheckUtils]: 77: Hoare triple {3955#true} assume true; {3955#true} is VALID [2020-07-18 06:34:53,942 INFO L275 TraceCheckUtils]: 78: Hoare quadruple {3955#true} {3956#false} #227#return; {3956#false} is VALID [2020-07-18 06:34:53,942 INFO L280 TraceCheckUtils]: 79: Hoare triple {3956#false} havoc #t~ret19.base, #t~ret19.offset; {3956#false} is VALID [2020-07-18 06:34:53,942 INFO L263 TraceCheckUtils]: 80: Hoare triple {3956#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {3956#false} is VALID [2020-07-18 06:34:53,943 INFO L280 TraceCheckUtils]: 81: Hoare triple {3956#false} ~cond := #in~cond; {3956#false} is VALID [2020-07-18 06:34:53,943 INFO L280 TraceCheckUtils]: 82: Hoare triple {3956#false} assume 0 == ~cond; {3956#false} is VALID [2020-07-18 06:34:53,943 INFO L280 TraceCheckUtils]: 83: Hoare triple {3956#false} assume !false; {3956#false} is VALID [2020-07-18 06:34:53,947 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 24 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:53,947 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [468405199] [2020-07-18 06:34:53,948 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:53,948 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2020-07-18 06:34:53,948 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1891145933] [2020-07-18 06:34:53,948 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 84 [2020-07-18 06:34:53,949 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:53,949 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-18 06:34:54,044 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:54,045 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-18 06:34:54,045 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:54,045 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-18 06:34:54,045 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2020-07-18 06:34:54,045 INFO L87 Difference]: Start difference. First operand 126 states and 136 transitions. Second operand 10 states. [2020-07-18 06:34:55,040 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:55,040 INFO L93 Difference]: Finished difference Result 233 states and 253 transitions. [2020-07-18 06:34:55,041 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-18 06:34:55,041 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 84 [2020-07-18 06:34:55,041 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:55,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:34:55,046 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 253 transitions. [2020-07-18 06:34:55,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:34:55,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 253 transitions. [2020-07-18 06:34:55,052 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 253 transitions. [2020-07-18 06:34:55,340 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 253 edges. 253 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:55,344 INFO L225 Difference]: With dead ends: 233 [2020-07-18 06:34:55,344 INFO L226 Difference]: Without dead ends: 138 [2020-07-18 06:34:55,345 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 26 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=80, Invalid=160, Unknown=0, NotChecked=0, Total=240 [2020-07-18 06:34:55,346 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 138 states. [2020-07-18 06:34:55,454 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 138 to 133. [2020-07-18 06:34:55,455 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:55,455 INFO L82 GeneralOperation]: Start isEquivalent. First operand 138 states. Second operand 133 states. [2020-07-18 06:34:55,455 INFO L74 IsIncluded]: Start isIncluded. First operand 138 states. Second operand 133 states. [2020-07-18 06:34:55,455 INFO L87 Difference]: Start difference. First operand 138 states. Second operand 133 states. [2020-07-18 06:34:55,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:55,460 INFO L93 Difference]: Finished difference Result 138 states and 148 transitions. [2020-07-18 06:34:55,461 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 148 transitions. [2020-07-18 06:34:55,461 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:55,461 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:55,462 INFO L74 IsIncluded]: Start isIncluded. First operand 133 states. Second operand 138 states. [2020-07-18 06:34:55,462 INFO L87 Difference]: Start difference. First operand 133 states. Second operand 138 states. [2020-07-18 06:34:55,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:55,467 INFO L93 Difference]: Finished difference Result 138 states and 148 transitions. [2020-07-18 06:34:55,468 INFO L276 IsEmpty]: Start isEmpty. Operand 138 states and 148 transitions. [2020-07-18 06:34:55,468 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:55,468 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:55,469 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:55,469 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:55,469 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 133 states. [2020-07-18 06:34:55,473 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 133 states to 133 states and 143 transitions. [2020-07-18 06:34:55,474 INFO L78 Accepts]: Start accepts. Automaton has 133 states and 143 transitions. Word has length 84 [2020-07-18 06:34:55,474 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:55,474 INFO L479 AbstractCegarLoop]: Abstraction has 133 states and 143 transitions. [2020-07-18 06:34:55,475 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-18 06:34:55,475 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 133 states and 143 transitions. [2020-07-18 06:34:55,649 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 143 edges. 143 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:55,649 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 143 transitions. [2020-07-18 06:34:55,651 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2020-07-18 06:34:55,651 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:55,652 INFO L422 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 4, 4, 4, 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, 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, 1, 1, 1] [2020-07-18 06:34:55,652 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-18 06:34:55,652 INFO L427 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:55,653 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:55,653 INFO L82 PathProgramCache]: Analyzing trace with hash -687690455, now seen corresponding path program 4 times [2020-07-18 06:34:55,653 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:55,654 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1382262458] [2020-07-18 06:34:55,654 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:55,724 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:55,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:55,945 INFO L280 TraceCheckUtils]: 0: Hoare triple {5024#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5000#true} is VALID [2020-07-18 06:34:55,946 INFO L280 TraceCheckUtils]: 1: Hoare triple {5000#true} #valid := #valid[0 := 0]; {5000#true} is VALID [2020-07-18 06:34:55,946 INFO L280 TraceCheckUtils]: 2: Hoare triple {5000#true} assume 0 < #StackHeapBarrier; {5000#true} is VALID [2020-07-18 06:34:55,947 INFO L280 TraceCheckUtils]: 3: Hoare triple {5000#true} assume true; {5000#true} is VALID [2020-07-18 06:34:55,947 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5000#true} {5000#true} #231#return; {5000#true} is VALID [2020-07-18 06:34:55,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:55,953 INFO L280 TraceCheckUtils]: 0: Hoare triple {5000#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {5000#true} is VALID [2020-07-18 06:34:55,954 INFO L280 TraceCheckUtils]: 1: Hoare triple {5000#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {5000#true} is VALID [2020-07-18 06:34:55,954 INFO L280 TraceCheckUtils]: 2: Hoare triple {5000#true} ~n := #in~n; {5000#true} is VALID [2020-07-18 06:34:55,954 INFO L280 TraceCheckUtils]: 3: Hoare triple {5000#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {5000#true} is VALID [2020-07-18 06:34:55,954 INFO L280 TraceCheckUtils]: 4: Hoare triple {5000#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {5000#true} is VALID [2020-07-18 06:34:55,955 INFO L280 TraceCheckUtils]: 5: Hoare triple {5000#true} havoc #t~ret0.base, #t~ret0.offset; {5000#true} is VALID [2020-07-18 06:34:55,955 INFO L280 TraceCheckUtils]: 6: Hoare triple {5000#true} assume true; {5000#true} is VALID [2020-07-18 06:34:55,955 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {5000#true} {5001#false} #227#return; {5001#false} is VALID [2020-07-18 06:34:55,956 INFO L263 TraceCheckUtils]: 0: Hoare triple {5000#true} call ULTIMATE.init(); {5024#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:55,956 INFO L280 TraceCheckUtils]: 1: Hoare triple {5024#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5000#true} is VALID [2020-07-18 06:34:55,957 INFO L280 TraceCheckUtils]: 2: Hoare triple {5000#true} #valid := #valid[0 := 0]; {5000#true} is VALID [2020-07-18 06:34:55,957 INFO L280 TraceCheckUtils]: 3: Hoare triple {5000#true} assume 0 < #StackHeapBarrier; {5000#true} is VALID [2020-07-18 06:34:55,957 INFO L280 TraceCheckUtils]: 4: Hoare triple {5000#true} assume true; {5000#true} is VALID [2020-07-18 06:34:55,957 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5000#true} {5000#true} #231#return; {5000#true} is VALID [2020-07-18 06:34:55,958 INFO L263 TraceCheckUtils]: 6: Hoare triple {5000#true} call #t~ret23 := main(); {5000#true} is VALID [2020-07-18 06:34:55,958 INFO L280 TraceCheckUtils]: 7: Hoare triple {5000#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {5000#true} is VALID [2020-07-18 06:34:55,959 INFO L280 TraceCheckUtils]: 8: Hoare triple {5000#true} ~i~1 := 0; {5007#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:55,960 INFO L280 TraceCheckUtils]: 9: Hoare triple {5007#(= 0 main_~i~1)} assume !!(~i~1 < 8); {5007#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:55,961 INFO L280 TraceCheckUtils]: 10: Hoare triple {5007#(= 0 main_~i~1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {5007#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:55,961 INFO L280 TraceCheckUtils]: 11: Hoare triple {5007#(= 0 main_~i~1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {5007#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:55,962 INFO L280 TraceCheckUtils]: 12: Hoare triple {5007#(= 0 main_~i~1)} havoc #t~nondet21; {5007#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:55,963 INFO L280 TraceCheckUtils]: 13: Hoare triple {5007#(= 0 main_~i~1)} #t~post20 := ~i~1; {5008#(= 0 |main_#t~post20|)} is VALID [2020-07-18 06:34:55,964 INFO L280 TraceCheckUtils]: 14: Hoare triple {5008#(= 0 |main_#t~post20|)} ~i~1 := 1 + #t~post20; {5009#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:55,965 INFO L280 TraceCheckUtils]: 15: Hoare triple {5009#(<= main_~i~1 1)} havoc #t~post20; {5009#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:55,965 INFO L280 TraceCheckUtils]: 16: Hoare triple {5009#(<= main_~i~1 1)} assume !!(~i~1 < 8); {5009#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:55,966 INFO L280 TraceCheckUtils]: 17: Hoare triple {5009#(<= main_~i~1 1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {5009#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:55,967 INFO L280 TraceCheckUtils]: 18: Hoare triple {5009#(<= main_~i~1 1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {5009#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:55,968 INFO L280 TraceCheckUtils]: 19: Hoare triple {5009#(<= main_~i~1 1)} havoc #t~nondet21; {5009#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:55,969 INFO L280 TraceCheckUtils]: 20: Hoare triple {5009#(<= main_~i~1 1)} #t~post20 := ~i~1; {5010#(<= |main_#t~post20| 1)} is VALID [2020-07-18 06:34:55,970 INFO L280 TraceCheckUtils]: 21: Hoare triple {5010#(<= |main_#t~post20| 1)} ~i~1 := 1 + #t~post20; {5011#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:55,972 INFO L280 TraceCheckUtils]: 22: Hoare triple {5011#(<= main_~i~1 2)} havoc #t~post20; {5011#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:55,973 INFO L280 TraceCheckUtils]: 23: Hoare triple {5011#(<= main_~i~1 2)} assume !!(~i~1 < 8); {5011#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:55,974 INFO L280 TraceCheckUtils]: 24: Hoare triple {5011#(<= main_~i~1 2)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {5011#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:55,975 INFO L280 TraceCheckUtils]: 25: Hoare triple {5011#(<= main_~i~1 2)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {5011#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:55,976 INFO L280 TraceCheckUtils]: 26: Hoare triple {5011#(<= main_~i~1 2)} havoc #t~nondet21; {5011#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:55,976 INFO L280 TraceCheckUtils]: 27: Hoare triple {5011#(<= main_~i~1 2)} #t~post20 := ~i~1; {5012#(<= |main_#t~post20| 2)} is VALID [2020-07-18 06:34:55,977 INFO L280 TraceCheckUtils]: 28: Hoare triple {5012#(<= |main_#t~post20| 2)} ~i~1 := 1 + #t~post20; {5013#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:55,978 INFO L280 TraceCheckUtils]: 29: Hoare triple {5013#(<= main_~i~1 3)} havoc #t~post20; {5013#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:55,979 INFO L280 TraceCheckUtils]: 30: Hoare triple {5013#(<= main_~i~1 3)} assume !!(~i~1 < 8); {5013#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:55,980 INFO L280 TraceCheckUtils]: 31: Hoare triple {5013#(<= main_~i~1 3)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {5013#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:55,982 INFO L280 TraceCheckUtils]: 32: Hoare triple {5013#(<= main_~i~1 3)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {5013#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:55,983 INFO L280 TraceCheckUtils]: 33: Hoare triple {5013#(<= main_~i~1 3)} havoc #t~nondet21; {5013#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:55,984 INFO L280 TraceCheckUtils]: 34: Hoare triple {5013#(<= main_~i~1 3)} #t~post20 := ~i~1; {5014#(<= |main_#t~post20| 3)} is VALID [2020-07-18 06:34:55,985 INFO L280 TraceCheckUtils]: 35: Hoare triple {5014#(<= |main_#t~post20| 3)} ~i~1 := 1 + #t~post20; {5015#(<= main_~i~1 4)} is VALID [2020-07-18 06:34:55,986 INFO L280 TraceCheckUtils]: 36: Hoare triple {5015#(<= main_~i~1 4)} havoc #t~post20; {5015#(<= main_~i~1 4)} is VALID [2020-07-18 06:34:55,987 INFO L280 TraceCheckUtils]: 37: Hoare triple {5015#(<= main_~i~1 4)} assume !(~i~1 < 8); {5001#false} is VALID [2020-07-18 06:34:55,988 INFO L280 TraceCheckUtils]: 38: Hoare triple {5001#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {5001#false} is VALID [2020-07-18 06:34:55,988 INFO L263 TraceCheckUtils]: 39: Hoare triple {5001#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {5001#false} is VALID [2020-07-18 06:34:55,988 INFO L280 TraceCheckUtils]: 40: Hoare triple {5001#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {5001#false} is VALID [2020-07-18 06:34:55,988 INFO L280 TraceCheckUtils]: 41: Hoare triple {5001#false} ~start~0 := 0; {5001#false} is VALID [2020-07-18 06:34:55,989 INFO L280 TraceCheckUtils]: 42: Hoare triple {5001#false} ~i~0 := -1; {5001#false} is VALID [2020-07-18 06:34:55,989 INFO L280 TraceCheckUtils]: 43: Hoare triple {5001#false} ~j~0 := -1; {5001#false} is VALID [2020-07-18 06:34:55,989 INFO L280 TraceCheckUtils]: 44: Hoare triple {5001#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {5001#false} is VALID [2020-07-18 06:34:55,990 INFO L280 TraceCheckUtils]: 45: Hoare triple {5001#false} assume !(~str.base == 0 && ~str.offset == 0); {5001#false} is VALID [2020-07-18 06:34:55,990 INFO L280 TraceCheckUtils]: 46: Hoare triple {5001#false} #t~post2 := ~i~0; {5001#false} is VALID [2020-07-18 06:34:55,990 INFO L280 TraceCheckUtils]: 47: Hoare triple {5001#false} ~i~0 := 1 + #t~post2; {5001#false} is VALID [2020-07-18 06:34:55,990 INFO L280 TraceCheckUtils]: 48: Hoare triple {5001#false} havoc #t~post2; {5001#false} is VALID [2020-07-18 06:34:55,991 INFO L280 TraceCheckUtils]: 49: Hoare triple {5001#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {5001#false} is VALID [2020-07-18 06:34:55,991 INFO L280 TraceCheckUtils]: 50: Hoare triple {5001#false} #t~switch4 := 0 == #t~mem3; {5001#false} is VALID [2020-07-18 06:34:55,991 INFO L280 TraceCheckUtils]: 51: Hoare triple {5001#false} assume #t~switch4; {5001#false} is VALID [2020-07-18 06:34:55,991 INFO L280 TraceCheckUtils]: 52: Hoare triple {5001#false} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {5001#false} is VALID [2020-07-18 06:34:55,992 INFO L280 TraceCheckUtils]: 53: Hoare triple {5001#false} #t~short7 := 32 == #t~mem5; {5001#false} is VALID [2020-07-18 06:34:55,992 INFO L280 TraceCheckUtils]: 54: Hoare triple {5001#false} assume #t~short7; {5001#false} is VALID [2020-07-18 06:34:55,992 INFO L280 TraceCheckUtils]: 55: Hoare triple {5001#false} assume !#t~short7; {5001#false} is VALID [2020-07-18 06:34:55,993 INFO L280 TraceCheckUtils]: 56: Hoare triple {5001#false} havoc #t~short7; {5001#false} is VALID [2020-07-18 06:34:55,993 INFO L280 TraceCheckUtils]: 57: Hoare triple {5001#false} havoc #t~mem6; {5001#false} is VALID [2020-07-18 06:34:55,993 INFO L280 TraceCheckUtils]: 58: Hoare triple {5001#false} havoc #t~mem5; {5001#false} is VALID [2020-07-18 06:34:55,993 INFO L280 TraceCheckUtils]: 59: Hoare triple {5001#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {5001#false} is VALID [2020-07-18 06:34:55,994 INFO L280 TraceCheckUtils]: 60: Hoare triple {5001#false} assume !(34 == #t~mem9); {5001#false} is VALID [2020-07-18 06:34:55,994 INFO L280 TraceCheckUtils]: 61: Hoare triple {5001#false} havoc #t~mem9; {5001#false} is VALID [2020-07-18 06:34:55,994 INFO L280 TraceCheckUtils]: 62: Hoare triple {5001#false} ~j~0 := ~i~0 - 1; {5001#false} is VALID [2020-07-18 06:34:55,994 INFO L280 TraceCheckUtils]: 63: Hoare triple {5001#false} #t~short14 := 0 < ~j~0; {5001#false} is VALID [2020-07-18 06:34:55,995 INFO L280 TraceCheckUtils]: 64: Hoare triple {5001#false} assume !#t~short14; {5001#false} is VALID [2020-07-18 06:34:55,995 INFO L280 TraceCheckUtils]: 65: Hoare triple {5001#false} assume !#t~short14; {5001#false} is VALID [2020-07-18 06:34:55,995 INFO L280 TraceCheckUtils]: 66: Hoare triple {5001#false} havoc #t~short14; {5001#false} is VALID [2020-07-18 06:34:55,996 INFO L280 TraceCheckUtils]: 67: Hoare triple {5001#false} havoc #t~mem11; {5001#false} is VALID [2020-07-18 06:34:55,996 INFO L280 TraceCheckUtils]: 68: Hoare triple {5001#false} havoc #t~mem12; {5001#false} is VALID [2020-07-18 06:34:55,996 INFO L280 TraceCheckUtils]: 69: Hoare triple {5001#false} havoc #t~short13; {5001#false} is VALID [2020-07-18 06:34:55,996 INFO L280 TraceCheckUtils]: 70: Hoare triple {5001#false} #t~short17 := 0 < ~j~0; {5001#false} is VALID [2020-07-18 06:34:55,997 INFO L280 TraceCheckUtils]: 71: Hoare triple {5001#false} assume !#t~short17; {5001#false} is VALID [2020-07-18 06:34:55,997 INFO L280 TraceCheckUtils]: 72: Hoare triple {5001#false} assume !#t~short17; {5001#false} is VALID [2020-07-18 06:34:55,997 INFO L280 TraceCheckUtils]: 73: Hoare triple {5001#false} havoc #t~mem16; {5001#false} is VALID [2020-07-18 06:34:55,997 INFO L280 TraceCheckUtils]: 74: Hoare triple {5001#false} havoc #t~short17; {5001#false} is VALID [2020-07-18 06:34:55,997 INFO L280 TraceCheckUtils]: 75: Hoare triple {5001#false} assume ~start~0 <= ~j~0; {5001#false} is VALID [2020-07-18 06:34:55,998 INFO L280 TraceCheckUtils]: 76: Hoare triple {5001#false} assume !(1 + (~j~0 - ~start~0) >= 2); {5001#false} is VALID [2020-07-18 06:34:55,998 INFO L263 TraceCheckUtils]: 77: Hoare triple {5001#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {5000#true} is VALID [2020-07-18 06:34:55,998 INFO L280 TraceCheckUtils]: 78: Hoare triple {5000#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {5000#true} is VALID [2020-07-18 06:34:55,998 INFO L280 TraceCheckUtils]: 79: Hoare triple {5000#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {5000#true} is VALID [2020-07-18 06:34:55,999 INFO L280 TraceCheckUtils]: 80: Hoare triple {5000#true} ~n := #in~n; {5000#true} is VALID [2020-07-18 06:34:55,999 INFO L280 TraceCheckUtils]: 81: Hoare triple {5000#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {5000#true} is VALID [2020-07-18 06:34:55,999 INFO L280 TraceCheckUtils]: 82: Hoare triple {5000#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {5000#true} is VALID [2020-07-18 06:34:55,999 INFO L280 TraceCheckUtils]: 83: Hoare triple {5000#true} havoc #t~ret0.base, #t~ret0.offset; {5000#true} is VALID [2020-07-18 06:34:56,000 INFO L280 TraceCheckUtils]: 84: Hoare triple {5000#true} assume true; {5000#true} is VALID [2020-07-18 06:34:56,000 INFO L275 TraceCheckUtils]: 85: Hoare quadruple {5000#true} {5001#false} #227#return; {5001#false} is VALID [2020-07-18 06:34:56,000 INFO L280 TraceCheckUtils]: 86: Hoare triple {5001#false} havoc #t~ret19.base, #t~ret19.offset; {5001#false} is VALID [2020-07-18 06:34:56,001 INFO L263 TraceCheckUtils]: 87: Hoare triple {5001#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {5001#false} is VALID [2020-07-18 06:34:56,001 INFO L280 TraceCheckUtils]: 88: Hoare triple {5001#false} ~cond := #in~cond; {5001#false} is VALID [2020-07-18 06:34:56,001 INFO L280 TraceCheckUtils]: 89: Hoare triple {5001#false} assume 0 == ~cond; {5001#false} is VALID [2020-07-18 06:34:56,001 INFO L280 TraceCheckUtils]: 90: Hoare triple {5001#false} assume !false; {5001#false} is VALID [2020-07-18 06:34:56,008 INFO L134 CoverageAnalysis]: Checked inductivity of 46 backedges. 0 proven. 46 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:56,008 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1382262458] [2020-07-18 06:34:56,008 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:56,009 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2020-07-18 06:34:56,009 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1665000381] [2020-07-18 06:34:56,009 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 91 [2020-07-18 06:34:56,010 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:56,010 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-18 06:34:56,124 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:56,124 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-18 06:34:56,125 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:56,125 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-18 06:34:56,125 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=37, Invalid=95, Unknown=0, NotChecked=0, Total=132 [2020-07-18 06:34:56,125 INFO L87 Difference]: Start difference. First operand 133 states and 143 transitions. Second operand 12 states. [2020-07-18 06:34:57,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:57,590 INFO L93 Difference]: Finished difference Result 240 states and 260 transitions. [2020-07-18 06:34:57,590 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-18 06:34:57,590 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 91 [2020-07-18 06:34:57,591 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:34:57,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 06:34:57,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 260 transitions. [2020-07-18 06:34:57,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 06:34:57,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 260 transitions. [2020-07-18 06:34:57,601 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 260 transitions. [2020-07-18 06:34:57,876 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 260 edges. 260 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:57,881 INFO L225 Difference]: With dead ends: 240 [2020-07-18 06:34:57,881 INFO L226 Difference]: Without dead ends: 145 [2020-07-18 06:34:57,882 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=125, Invalid=255, Unknown=0, NotChecked=0, Total=380 [2020-07-18 06:34:57,882 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 145 states. [2020-07-18 06:34:57,997 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 145 to 140. [2020-07-18 06:34:57,997 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:34:57,998 INFO L82 GeneralOperation]: Start isEquivalent. First operand 145 states. Second operand 140 states. [2020-07-18 06:34:57,998 INFO L74 IsIncluded]: Start isIncluded. First operand 145 states. Second operand 140 states. [2020-07-18 06:34:57,998 INFO L87 Difference]: Start difference. First operand 145 states. Second operand 140 states. [2020-07-18 06:34:58,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:58,004 INFO L93 Difference]: Finished difference Result 145 states and 155 transitions. [2020-07-18 06:34:58,004 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 155 transitions. [2020-07-18 06:34:58,005 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:58,005 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:58,005 INFO L74 IsIncluded]: Start isIncluded. First operand 140 states. Second operand 145 states. [2020-07-18 06:34:58,006 INFO L87 Difference]: Start difference. First operand 140 states. Second operand 145 states. [2020-07-18 06:34:58,010 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:34:58,011 INFO L93 Difference]: Finished difference Result 145 states and 155 transitions. [2020-07-18 06:34:58,011 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 155 transitions. [2020-07-18 06:34:58,012 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:34:58,012 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:34:58,012 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:34:58,012 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:34:58,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 140 states. [2020-07-18 06:34:58,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 150 transitions. [2020-07-18 06:34:58,017 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 150 transitions. Word has length 91 [2020-07-18 06:34:58,017 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:34:58,017 INFO L479 AbstractCegarLoop]: Abstraction has 140 states and 150 transitions. [2020-07-18 06:34:58,017 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-18 06:34:58,017 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 140 states and 150 transitions. [2020-07-18 06:34:58,172 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 150 edges. 150 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:58,173 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 150 transitions. [2020-07-18 06:34:58,174 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 99 [2020-07-18 06:34:58,174 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:34:58,175 INFO L422 BasicCegarLoop]: trace histogram [5, 5, 5, 5, 5, 5, 5, 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, 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, 1, 1, 1] [2020-07-18 06:34:58,175 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2020-07-18 06:34:58,175 INFO L427 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:34:58,176 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:34:58,176 INFO L82 PathProgramCache]: Analyzing trace with hash -722319669, now seen corresponding path program 5 times [2020-07-18 06:34:58,176 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:34:58,178 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1572703225] [2020-07-18 06:34:58,178 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:34:58,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:58,446 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:58,452 INFO L280 TraceCheckUtils]: 0: Hoare triple {6119#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6093#true} is VALID [2020-07-18 06:34:58,452 INFO L280 TraceCheckUtils]: 1: Hoare triple {6093#true} #valid := #valid[0 := 0]; {6093#true} is VALID [2020-07-18 06:34:58,452 INFO L280 TraceCheckUtils]: 2: Hoare triple {6093#true} assume 0 < #StackHeapBarrier; {6093#true} is VALID [2020-07-18 06:34:58,453 INFO L280 TraceCheckUtils]: 3: Hoare triple {6093#true} assume true; {6093#true} is VALID [2020-07-18 06:34:58,453 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {6093#true} {6093#true} #231#return; {6093#true} is VALID [2020-07-18 06:34:58,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:34:58,458 INFO L280 TraceCheckUtils]: 0: Hoare triple {6093#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {6093#true} is VALID [2020-07-18 06:34:58,458 INFO L280 TraceCheckUtils]: 1: Hoare triple {6093#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {6093#true} is VALID [2020-07-18 06:34:58,458 INFO L280 TraceCheckUtils]: 2: Hoare triple {6093#true} ~n := #in~n; {6093#true} is VALID [2020-07-18 06:34:58,459 INFO L280 TraceCheckUtils]: 3: Hoare triple {6093#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {6093#true} is VALID [2020-07-18 06:34:58,459 INFO L280 TraceCheckUtils]: 4: Hoare triple {6093#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {6093#true} is VALID [2020-07-18 06:34:58,459 INFO L280 TraceCheckUtils]: 5: Hoare triple {6093#true} havoc #t~ret0.base, #t~ret0.offset; {6093#true} is VALID [2020-07-18 06:34:58,459 INFO L280 TraceCheckUtils]: 6: Hoare triple {6093#true} assume true; {6093#true} is VALID [2020-07-18 06:34:58,460 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {6093#true} {6094#false} #227#return; {6094#false} is VALID [2020-07-18 06:34:58,461 INFO L263 TraceCheckUtils]: 0: Hoare triple {6093#true} call ULTIMATE.init(); {6119#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:34:58,461 INFO L280 TraceCheckUtils]: 1: Hoare triple {6119#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6093#true} is VALID [2020-07-18 06:34:58,462 INFO L280 TraceCheckUtils]: 2: Hoare triple {6093#true} #valid := #valid[0 := 0]; {6093#true} is VALID [2020-07-18 06:34:58,462 INFO L280 TraceCheckUtils]: 3: Hoare triple {6093#true} assume 0 < #StackHeapBarrier; {6093#true} is VALID [2020-07-18 06:34:58,462 INFO L280 TraceCheckUtils]: 4: Hoare triple {6093#true} assume true; {6093#true} is VALID [2020-07-18 06:34:58,462 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {6093#true} {6093#true} #231#return; {6093#true} is VALID [2020-07-18 06:34:58,463 INFO L263 TraceCheckUtils]: 6: Hoare triple {6093#true} call #t~ret23 := main(); {6093#true} is VALID [2020-07-18 06:34:58,463 INFO L280 TraceCheckUtils]: 7: Hoare triple {6093#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {6093#true} is VALID [2020-07-18 06:34:58,464 INFO L280 TraceCheckUtils]: 8: Hoare triple {6093#true} ~i~1 := 0; {6100#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:58,465 INFO L280 TraceCheckUtils]: 9: Hoare triple {6100#(= 0 main_~i~1)} assume !!(~i~1 < 8); {6100#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:58,466 INFO L280 TraceCheckUtils]: 10: Hoare triple {6100#(= 0 main_~i~1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {6100#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:58,467 INFO L280 TraceCheckUtils]: 11: Hoare triple {6100#(= 0 main_~i~1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {6100#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:58,471 INFO L280 TraceCheckUtils]: 12: Hoare triple {6100#(= 0 main_~i~1)} havoc #t~nondet21; {6100#(= 0 main_~i~1)} is VALID [2020-07-18 06:34:58,477 INFO L280 TraceCheckUtils]: 13: Hoare triple {6100#(= 0 main_~i~1)} #t~post20 := ~i~1; {6101#(= 0 |main_#t~post20|)} is VALID [2020-07-18 06:34:58,482 INFO L280 TraceCheckUtils]: 14: Hoare triple {6101#(= 0 |main_#t~post20|)} ~i~1 := 1 + #t~post20; {6102#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:58,485 INFO L280 TraceCheckUtils]: 15: Hoare triple {6102#(<= main_~i~1 1)} havoc #t~post20; {6102#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:58,487 INFO L280 TraceCheckUtils]: 16: Hoare triple {6102#(<= main_~i~1 1)} assume !!(~i~1 < 8); {6102#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:58,488 INFO L280 TraceCheckUtils]: 17: Hoare triple {6102#(<= main_~i~1 1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {6102#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:58,489 INFO L280 TraceCheckUtils]: 18: Hoare triple {6102#(<= main_~i~1 1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {6102#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:58,490 INFO L280 TraceCheckUtils]: 19: Hoare triple {6102#(<= main_~i~1 1)} havoc #t~nondet21; {6102#(<= main_~i~1 1)} is VALID [2020-07-18 06:34:58,491 INFO L280 TraceCheckUtils]: 20: Hoare triple {6102#(<= main_~i~1 1)} #t~post20 := ~i~1; {6103#(<= |main_#t~post20| 1)} is VALID [2020-07-18 06:34:58,492 INFO L280 TraceCheckUtils]: 21: Hoare triple {6103#(<= |main_#t~post20| 1)} ~i~1 := 1 + #t~post20; {6104#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:58,493 INFO L280 TraceCheckUtils]: 22: Hoare triple {6104#(<= main_~i~1 2)} havoc #t~post20; {6104#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:58,493 INFO L280 TraceCheckUtils]: 23: Hoare triple {6104#(<= main_~i~1 2)} assume !!(~i~1 < 8); {6104#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:58,494 INFO L280 TraceCheckUtils]: 24: Hoare triple {6104#(<= main_~i~1 2)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {6104#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:58,495 INFO L280 TraceCheckUtils]: 25: Hoare triple {6104#(<= main_~i~1 2)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {6104#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:58,496 INFO L280 TraceCheckUtils]: 26: Hoare triple {6104#(<= main_~i~1 2)} havoc #t~nondet21; {6104#(<= main_~i~1 2)} is VALID [2020-07-18 06:34:58,497 INFO L280 TraceCheckUtils]: 27: Hoare triple {6104#(<= main_~i~1 2)} #t~post20 := ~i~1; {6105#(<= |main_#t~post20| 2)} is VALID [2020-07-18 06:34:58,498 INFO L280 TraceCheckUtils]: 28: Hoare triple {6105#(<= |main_#t~post20| 2)} ~i~1 := 1 + #t~post20; {6106#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:58,499 INFO L280 TraceCheckUtils]: 29: Hoare triple {6106#(<= main_~i~1 3)} havoc #t~post20; {6106#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:58,500 INFO L280 TraceCheckUtils]: 30: Hoare triple {6106#(<= main_~i~1 3)} assume !!(~i~1 < 8); {6106#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:58,501 INFO L280 TraceCheckUtils]: 31: Hoare triple {6106#(<= main_~i~1 3)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {6106#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:58,501 INFO L280 TraceCheckUtils]: 32: Hoare triple {6106#(<= main_~i~1 3)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {6106#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:58,503 INFO L280 TraceCheckUtils]: 33: Hoare triple {6106#(<= main_~i~1 3)} havoc #t~nondet21; {6106#(<= main_~i~1 3)} is VALID [2020-07-18 06:34:58,516 INFO L280 TraceCheckUtils]: 34: Hoare triple {6106#(<= main_~i~1 3)} #t~post20 := ~i~1; {6107#(<= |main_#t~post20| 3)} is VALID [2020-07-18 06:34:58,518 INFO L280 TraceCheckUtils]: 35: Hoare triple {6107#(<= |main_#t~post20| 3)} ~i~1 := 1 + #t~post20; {6108#(<= main_~i~1 4)} is VALID [2020-07-18 06:34:58,519 INFO L280 TraceCheckUtils]: 36: Hoare triple {6108#(<= main_~i~1 4)} havoc #t~post20; {6108#(<= main_~i~1 4)} is VALID [2020-07-18 06:34:58,520 INFO L280 TraceCheckUtils]: 37: Hoare triple {6108#(<= main_~i~1 4)} assume !!(~i~1 < 8); {6108#(<= main_~i~1 4)} is VALID [2020-07-18 06:34:58,521 INFO L280 TraceCheckUtils]: 38: Hoare triple {6108#(<= main_~i~1 4)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {6108#(<= main_~i~1 4)} is VALID [2020-07-18 06:34:58,521 INFO L280 TraceCheckUtils]: 39: Hoare triple {6108#(<= main_~i~1 4)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {6108#(<= main_~i~1 4)} is VALID [2020-07-18 06:34:58,522 INFO L280 TraceCheckUtils]: 40: Hoare triple {6108#(<= main_~i~1 4)} havoc #t~nondet21; {6108#(<= main_~i~1 4)} is VALID [2020-07-18 06:34:58,523 INFO L280 TraceCheckUtils]: 41: Hoare triple {6108#(<= main_~i~1 4)} #t~post20 := ~i~1; {6109#(<= |main_#t~post20| 4)} is VALID [2020-07-18 06:34:58,529 INFO L280 TraceCheckUtils]: 42: Hoare triple {6109#(<= |main_#t~post20| 4)} ~i~1 := 1 + #t~post20; {6110#(<= main_~i~1 5)} is VALID [2020-07-18 06:34:58,530 INFO L280 TraceCheckUtils]: 43: Hoare triple {6110#(<= main_~i~1 5)} havoc #t~post20; {6110#(<= main_~i~1 5)} is VALID [2020-07-18 06:34:58,532 INFO L280 TraceCheckUtils]: 44: Hoare triple {6110#(<= main_~i~1 5)} assume !(~i~1 < 8); {6094#false} is VALID [2020-07-18 06:34:58,532 INFO L280 TraceCheckUtils]: 45: Hoare triple {6094#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {6094#false} is VALID [2020-07-18 06:34:58,533 INFO L263 TraceCheckUtils]: 46: Hoare triple {6094#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {6094#false} is VALID [2020-07-18 06:34:58,533 INFO L280 TraceCheckUtils]: 47: Hoare triple {6094#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {6094#false} is VALID [2020-07-18 06:34:58,533 INFO L280 TraceCheckUtils]: 48: Hoare triple {6094#false} ~start~0 := 0; {6094#false} is VALID [2020-07-18 06:34:58,534 INFO L280 TraceCheckUtils]: 49: Hoare triple {6094#false} ~i~0 := -1; {6094#false} is VALID [2020-07-18 06:34:58,534 INFO L280 TraceCheckUtils]: 50: Hoare triple {6094#false} ~j~0 := -1; {6094#false} is VALID [2020-07-18 06:34:58,534 INFO L280 TraceCheckUtils]: 51: Hoare triple {6094#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {6094#false} is VALID [2020-07-18 06:34:58,535 INFO L280 TraceCheckUtils]: 52: Hoare triple {6094#false} assume !(~str.base == 0 && ~str.offset == 0); {6094#false} is VALID [2020-07-18 06:34:58,535 INFO L280 TraceCheckUtils]: 53: Hoare triple {6094#false} #t~post2 := ~i~0; {6094#false} is VALID [2020-07-18 06:34:58,535 INFO L280 TraceCheckUtils]: 54: Hoare triple {6094#false} ~i~0 := 1 + #t~post2; {6094#false} is VALID [2020-07-18 06:34:58,536 INFO L280 TraceCheckUtils]: 55: Hoare triple {6094#false} havoc #t~post2; {6094#false} is VALID [2020-07-18 06:34:58,536 INFO L280 TraceCheckUtils]: 56: Hoare triple {6094#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {6094#false} is VALID [2020-07-18 06:34:58,536 INFO L280 TraceCheckUtils]: 57: Hoare triple {6094#false} #t~switch4 := 0 == #t~mem3; {6094#false} is VALID [2020-07-18 06:34:58,537 INFO L280 TraceCheckUtils]: 58: Hoare triple {6094#false} assume #t~switch4; {6094#false} is VALID [2020-07-18 06:34:58,537 INFO L280 TraceCheckUtils]: 59: Hoare triple {6094#false} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {6094#false} is VALID [2020-07-18 06:34:58,537 INFO L280 TraceCheckUtils]: 60: Hoare triple {6094#false} #t~short7 := 32 == #t~mem5; {6094#false} is VALID [2020-07-18 06:34:58,538 INFO L280 TraceCheckUtils]: 61: Hoare triple {6094#false} assume #t~short7; {6094#false} is VALID [2020-07-18 06:34:58,538 INFO L280 TraceCheckUtils]: 62: Hoare triple {6094#false} assume !#t~short7; {6094#false} is VALID [2020-07-18 06:34:58,538 INFO L280 TraceCheckUtils]: 63: Hoare triple {6094#false} havoc #t~short7; {6094#false} is VALID [2020-07-18 06:34:58,538 INFO L280 TraceCheckUtils]: 64: Hoare triple {6094#false} havoc #t~mem6; {6094#false} is VALID [2020-07-18 06:34:58,538 INFO L280 TraceCheckUtils]: 65: Hoare triple {6094#false} havoc #t~mem5; {6094#false} is VALID [2020-07-18 06:34:58,539 INFO L280 TraceCheckUtils]: 66: Hoare triple {6094#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {6094#false} is VALID [2020-07-18 06:34:58,539 INFO L280 TraceCheckUtils]: 67: Hoare triple {6094#false} assume !(34 == #t~mem9); {6094#false} is VALID [2020-07-18 06:34:58,539 INFO L280 TraceCheckUtils]: 68: Hoare triple {6094#false} havoc #t~mem9; {6094#false} is VALID [2020-07-18 06:34:58,540 INFO L280 TraceCheckUtils]: 69: Hoare triple {6094#false} ~j~0 := ~i~0 - 1; {6094#false} is VALID [2020-07-18 06:34:58,540 INFO L280 TraceCheckUtils]: 70: Hoare triple {6094#false} #t~short14 := 0 < ~j~0; {6094#false} is VALID [2020-07-18 06:34:58,540 INFO L280 TraceCheckUtils]: 71: Hoare triple {6094#false} assume !#t~short14; {6094#false} is VALID [2020-07-18 06:34:58,541 INFO L280 TraceCheckUtils]: 72: Hoare triple {6094#false} assume !#t~short14; {6094#false} is VALID [2020-07-18 06:34:58,541 INFO L280 TraceCheckUtils]: 73: Hoare triple {6094#false} havoc #t~short14; {6094#false} is VALID [2020-07-18 06:34:58,541 INFO L280 TraceCheckUtils]: 74: Hoare triple {6094#false} havoc #t~mem11; {6094#false} is VALID [2020-07-18 06:34:58,542 INFO L280 TraceCheckUtils]: 75: Hoare triple {6094#false} havoc #t~mem12; {6094#false} is VALID [2020-07-18 06:34:58,542 INFO L280 TraceCheckUtils]: 76: Hoare triple {6094#false} havoc #t~short13; {6094#false} is VALID [2020-07-18 06:34:58,542 INFO L280 TraceCheckUtils]: 77: Hoare triple {6094#false} #t~short17 := 0 < ~j~0; {6094#false} is VALID [2020-07-18 06:34:58,543 INFO L280 TraceCheckUtils]: 78: Hoare triple {6094#false} assume !#t~short17; {6094#false} is VALID [2020-07-18 06:34:58,543 INFO L280 TraceCheckUtils]: 79: Hoare triple {6094#false} assume !#t~short17; {6094#false} is VALID [2020-07-18 06:34:58,543 INFO L280 TraceCheckUtils]: 80: Hoare triple {6094#false} havoc #t~mem16; {6094#false} is VALID [2020-07-18 06:34:58,544 INFO L280 TraceCheckUtils]: 81: Hoare triple {6094#false} havoc #t~short17; {6094#false} is VALID [2020-07-18 06:34:58,544 INFO L280 TraceCheckUtils]: 82: Hoare triple {6094#false} assume ~start~0 <= ~j~0; {6094#false} is VALID [2020-07-18 06:34:58,544 INFO L280 TraceCheckUtils]: 83: Hoare triple {6094#false} assume !(1 + (~j~0 - ~start~0) >= 2); {6094#false} is VALID [2020-07-18 06:34:58,545 INFO L263 TraceCheckUtils]: 84: Hoare triple {6094#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {6093#true} is VALID [2020-07-18 06:34:58,545 INFO L280 TraceCheckUtils]: 85: Hoare triple {6093#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {6093#true} is VALID [2020-07-18 06:34:58,546 INFO L280 TraceCheckUtils]: 86: Hoare triple {6093#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {6093#true} is VALID [2020-07-18 06:34:58,546 INFO L280 TraceCheckUtils]: 87: Hoare triple {6093#true} ~n := #in~n; {6093#true} is VALID [2020-07-18 06:34:58,546 INFO L280 TraceCheckUtils]: 88: Hoare triple {6093#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {6093#true} is VALID [2020-07-18 06:34:58,546 INFO L280 TraceCheckUtils]: 89: Hoare triple {6093#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {6093#true} is VALID [2020-07-18 06:34:58,547 INFO L280 TraceCheckUtils]: 90: Hoare triple {6093#true} havoc #t~ret0.base, #t~ret0.offset; {6093#true} is VALID [2020-07-18 06:34:58,547 INFO L280 TraceCheckUtils]: 91: Hoare triple {6093#true} assume true; {6093#true} is VALID [2020-07-18 06:34:58,547 INFO L275 TraceCheckUtils]: 92: Hoare quadruple {6093#true} {6094#false} #227#return; {6094#false} is VALID [2020-07-18 06:34:58,548 INFO L280 TraceCheckUtils]: 93: Hoare triple {6094#false} havoc #t~ret19.base, #t~ret19.offset; {6094#false} is VALID [2020-07-18 06:34:58,548 INFO L263 TraceCheckUtils]: 94: Hoare triple {6094#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {6094#false} is VALID [2020-07-18 06:34:58,548 INFO L280 TraceCheckUtils]: 95: Hoare triple {6094#false} ~cond := #in~cond; {6094#false} is VALID [2020-07-18 06:34:58,548 INFO L280 TraceCheckUtils]: 96: Hoare triple {6094#false} assume 0 == ~cond; {6094#false} is VALID [2020-07-18 06:34:58,549 INFO L280 TraceCheckUtils]: 97: Hoare triple {6094#false} assume !false; {6094#false} is VALID [2020-07-18 06:34:58,564 INFO L134 CoverageAnalysis]: Checked inductivity of 75 backedges. 0 proven. 75 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:34:58,565 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1572703225] [2020-07-18 06:34:58,566 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:34:58,566 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2020-07-18 06:34:58,566 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [207578781] [2020-07-18 06:34:58,570 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 98 [2020-07-18 06:34:58,570 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:34:58,571 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-18 06:34:58,698 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:34:58,698 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2020-07-18 06:34:58,699 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:34:58,699 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-18 06:34:58,699 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=132, Unknown=0, NotChecked=0, Total=182 [2020-07-18 06:34:58,699 INFO L87 Difference]: Start difference. First operand 140 states and 150 transitions. Second operand 14 states. [2020-07-18 06:35:00,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:00,667 INFO L93 Difference]: Finished difference Result 247 states and 267 transitions. [2020-07-18 06:35:00,667 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2020-07-18 06:35:00,667 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 98 [2020-07-18 06:35:00,667 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:00,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 06:35:00,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 267 transitions. [2020-07-18 06:35:00,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-18 06:35:00,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 267 transitions. [2020-07-18 06:35:00,677 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 19 states and 267 transitions. [2020-07-18 06:35:00,976 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 267 edges. 267 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:00,979 INFO L225 Difference]: With dead ends: 247 [2020-07-18 06:35:00,979 INFO L226 Difference]: Without dead ends: 152 [2020-07-18 06:35:00,980 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=180, Invalid=372, Unknown=0, NotChecked=0, Total=552 [2020-07-18 06:35:00,981 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 152 states. [2020-07-18 06:35:01,102 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 152 to 147. [2020-07-18 06:35:01,103 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:01,103 INFO L82 GeneralOperation]: Start isEquivalent. First operand 152 states. Second operand 147 states. [2020-07-18 06:35:01,103 INFO L74 IsIncluded]: Start isIncluded. First operand 152 states. Second operand 147 states. [2020-07-18 06:35:01,104 INFO L87 Difference]: Start difference. First operand 152 states. Second operand 147 states. [2020-07-18 06:35:01,108 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:01,109 INFO L93 Difference]: Finished difference Result 152 states and 162 transitions. [2020-07-18 06:35:01,109 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 162 transitions. [2020-07-18 06:35:01,109 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:01,109 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:01,110 INFO L74 IsIncluded]: Start isIncluded. First operand 147 states. Second operand 152 states. [2020-07-18 06:35:01,110 INFO L87 Difference]: Start difference. First operand 147 states. Second operand 152 states. [2020-07-18 06:35:01,113 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:01,114 INFO L93 Difference]: Finished difference Result 152 states and 162 transitions. [2020-07-18 06:35:01,114 INFO L276 IsEmpty]: Start isEmpty. Operand 152 states and 162 transitions. [2020-07-18 06:35:01,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:01,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:01,115 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:01,115 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:01,115 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 147 states. [2020-07-18 06:35:01,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 147 states to 147 states and 157 transitions. [2020-07-18 06:35:01,120 INFO L78 Accepts]: Start accepts. Automaton has 147 states and 157 transitions. Word has length 98 [2020-07-18 06:35:01,120 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:01,121 INFO L479 AbstractCegarLoop]: Abstraction has 147 states and 157 transitions. [2020-07-18 06:35:01,121 INFO L480 AbstractCegarLoop]: Interpolant automaton has 14 states. [2020-07-18 06:35:01,121 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 147 states and 157 transitions. [2020-07-18 06:35:01,316 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 157 edges. 157 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:01,316 INFO L276 IsEmpty]: Start isEmpty. Operand 147 states and 157 transitions. [2020-07-18 06:35:01,317 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 106 [2020-07-18 06:35:01,318 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:01,318 INFO L422 BasicCegarLoop]: trace histogram [6, 6, 6, 6, 6, 6, 6, 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, 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, 1, 1, 1] [2020-07-18 06:35:01,318 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-18 06:35:01,318 INFO L427 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:01,319 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:01,319 INFO L82 PathProgramCache]: Analyzing trace with hash 1819472617, now seen corresponding path program 6 times [2020-07-18 06:35:01,319 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:01,320 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1604000418] [2020-07-18 06:35:01,320 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:01,377 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:01,646 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:01,650 INFO L280 TraceCheckUtils]: 0: Hoare triple {7262#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {7234#true} is VALID [2020-07-18 06:35:01,651 INFO L280 TraceCheckUtils]: 1: Hoare triple {7234#true} #valid := #valid[0 := 0]; {7234#true} is VALID [2020-07-18 06:35:01,651 INFO L280 TraceCheckUtils]: 2: Hoare triple {7234#true} assume 0 < #StackHeapBarrier; {7234#true} is VALID [2020-07-18 06:35:01,651 INFO L280 TraceCheckUtils]: 3: Hoare triple {7234#true} assume true; {7234#true} is VALID [2020-07-18 06:35:01,651 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {7234#true} {7234#true} #231#return; {7234#true} is VALID [2020-07-18 06:35:01,653 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:01,658 INFO L280 TraceCheckUtils]: 0: Hoare triple {7234#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {7234#true} is VALID [2020-07-18 06:35:01,658 INFO L280 TraceCheckUtils]: 1: Hoare triple {7234#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {7234#true} is VALID [2020-07-18 06:35:01,658 INFO L280 TraceCheckUtils]: 2: Hoare triple {7234#true} ~n := #in~n; {7234#true} is VALID [2020-07-18 06:35:01,659 INFO L280 TraceCheckUtils]: 3: Hoare triple {7234#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {7234#true} is VALID [2020-07-18 06:35:01,659 INFO L280 TraceCheckUtils]: 4: Hoare triple {7234#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {7234#true} is VALID [2020-07-18 06:35:01,659 INFO L280 TraceCheckUtils]: 5: Hoare triple {7234#true} havoc #t~ret0.base, #t~ret0.offset; {7234#true} is VALID [2020-07-18 06:35:01,659 INFO L280 TraceCheckUtils]: 6: Hoare triple {7234#true} assume true; {7234#true} is VALID [2020-07-18 06:35:01,659 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {7234#true} {7235#false} #227#return; {7235#false} is VALID [2020-07-18 06:35:01,661 INFO L263 TraceCheckUtils]: 0: Hoare triple {7234#true} call ULTIMATE.init(); {7262#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:01,661 INFO L280 TraceCheckUtils]: 1: Hoare triple {7262#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {7234#true} is VALID [2020-07-18 06:35:01,661 INFO L280 TraceCheckUtils]: 2: Hoare triple {7234#true} #valid := #valid[0 := 0]; {7234#true} is VALID [2020-07-18 06:35:01,661 INFO L280 TraceCheckUtils]: 3: Hoare triple {7234#true} assume 0 < #StackHeapBarrier; {7234#true} is VALID [2020-07-18 06:35:01,662 INFO L280 TraceCheckUtils]: 4: Hoare triple {7234#true} assume true; {7234#true} is VALID [2020-07-18 06:35:01,662 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {7234#true} {7234#true} #231#return; {7234#true} is VALID [2020-07-18 06:35:01,662 INFO L263 TraceCheckUtils]: 6: Hoare triple {7234#true} call #t~ret23 := main(); {7234#true} is VALID [2020-07-18 06:35:01,663 INFO L280 TraceCheckUtils]: 7: Hoare triple {7234#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {7234#true} is VALID [2020-07-18 06:35:01,664 INFO L280 TraceCheckUtils]: 8: Hoare triple {7234#true} ~i~1 := 0; {7241#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:01,664 INFO L280 TraceCheckUtils]: 9: Hoare triple {7241#(= 0 main_~i~1)} assume !!(~i~1 < 8); {7241#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:01,665 INFO L280 TraceCheckUtils]: 10: Hoare triple {7241#(= 0 main_~i~1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {7241#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:01,665 INFO L280 TraceCheckUtils]: 11: Hoare triple {7241#(= 0 main_~i~1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {7241#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:01,666 INFO L280 TraceCheckUtils]: 12: Hoare triple {7241#(= 0 main_~i~1)} havoc #t~nondet21; {7241#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:01,667 INFO L280 TraceCheckUtils]: 13: Hoare triple {7241#(= 0 main_~i~1)} #t~post20 := ~i~1; {7242#(= 0 |main_#t~post20|)} is VALID [2020-07-18 06:35:01,668 INFO L280 TraceCheckUtils]: 14: Hoare triple {7242#(= 0 |main_#t~post20|)} ~i~1 := 1 + #t~post20; {7243#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:01,669 INFO L280 TraceCheckUtils]: 15: Hoare triple {7243#(<= main_~i~1 1)} havoc #t~post20; {7243#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:01,670 INFO L280 TraceCheckUtils]: 16: Hoare triple {7243#(<= main_~i~1 1)} assume !!(~i~1 < 8); {7243#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:01,670 INFO L280 TraceCheckUtils]: 17: Hoare triple {7243#(<= main_~i~1 1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {7243#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:01,671 INFO L280 TraceCheckUtils]: 18: Hoare triple {7243#(<= main_~i~1 1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {7243#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:01,672 INFO L280 TraceCheckUtils]: 19: Hoare triple {7243#(<= main_~i~1 1)} havoc #t~nondet21; {7243#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:01,673 INFO L280 TraceCheckUtils]: 20: Hoare triple {7243#(<= main_~i~1 1)} #t~post20 := ~i~1; {7244#(<= |main_#t~post20| 1)} is VALID [2020-07-18 06:35:01,674 INFO L280 TraceCheckUtils]: 21: Hoare triple {7244#(<= |main_#t~post20| 1)} ~i~1 := 1 + #t~post20; {7245#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:01,675 INFO L280 TraceCheckUtils]: 22: Hoare triple {7245#(<= main_~i~1 2)} havoc #t~post20; {7245#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:01,676 INFO L280 TraceCheckUtils]: 23: Hoare triple {7245#(<= main_~i~1 2)} assume !!(~i~1 < 8); {7245#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:01,677 INFO L280 TraceCheckUtils]: 24: Hoare triple {7245#(<= main_~i~1 2)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {7245#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:01,677 INFO L280 TraceCheckUtils]: 25: Hoare triple {7245#(<= main_~i~1 2)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {7245#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:01,678 INFO L280 TraceCheckUtils]: 26: Hoare triple {7245#(<= main_~i~1 2)} havoc #t~nondet21; {7245#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:01,679 INFO L280 TraceCheckUtils]: 27: Hoare triple {7245#(<= main_~i~1 2)} #t~post20 := ~i~1; {7246#(<= |main_#t~post20| 2)} is VALID [2020-07-18 06:35:01,679 INFO L280 TraceCheckUtils]: 28: Hoare triple {7246#(<= |main_#t~post20| 2)} ~i~1 := 1 + #t~post20; {7247#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:01,680 INFO L280 TraceCheckUtils]: 29: Hoare triple {7247#(<= main_~i~1 3)} havoc #t~post20; {7247#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:01,681 INFO L280 TraceCheckUtils]: 30: Hoare triple {7247#(<= main_~i~1 3)} assume !!(~i~1 < 8); {7247#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:01,681 INFO L280 TraceCheckUtils]: 31: Hoare triple {7247#(<= main_~i~1 3)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {7247#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:01,682 INFO L280 TraceCheckUtils]: 32: Hoare triple {7247#(<= main_~i~1 3)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {7247#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:01,682 INFO L280 TraceCheckUtils]: 33: Hoare triple {7247#(<= main_~i~1 3)} havoc #t~nondet21; {7247#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:01,683 INFO L280 TraceCheckUtils]: 34: Hoare triple {7247#(<= main_~i~1 3)} #t~post20 := ~i~1; {7248#(<= |main_#t~post20| 3)} is VALID [2020-07-18 06:35:01,685 INFO L280 TraceCheckUtils]: 35: Hoare triple {7248#(<= |main_#t~post20| 3)} ~i~1 := 1 + #t~post20; {7249#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:01,685 INFO L280 TraceCheckUtils]: 36: Hoare triple {7249#(<= main_~i~1 4)} havoc #t~post20; {7249#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:01,686 INFO L280 TraceCheckUtils]: 37: Hoare triple {7249#(<= main_~i~1 4)} assume !!(~i~1 < 8); {7249#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:01,687 INFO L280 TraceCheckUtils]: 38: Hoare triple {7249#(<= main_~i~1 4)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {7249#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:01,688 INFO L280 TraceCheckUtils]: 39: Hoare triple {7249#(<= main_~i~1 4)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {7249#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:01,689 INFO L280 TraceCheckUtils]: 40: Hoare triple {7249#(<= main_~i~1 4)} havoc #t~nondet21; {7249#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:01,690 INFO L280 TraceCheckUtils]: 41: Hoare triple {7249#(<= main_~i~1 4)} #t~post20 := ~i~1; {7250#(<= |main_#t~post20| 4)} is VALID [2020-07-18 06:35:01,692 INFO L280 TraceCheckUtils]: 42: Hoare triple {7250#(<= |main_#t~post20| 4)} ~i~1 := 1 + #t~post20; {7251#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:01,692 INFO L280 TraceCheckUtils]: 43: Hoare triple {7251#(<= main_~i~1 5)} havoc #t~post20; {7251#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:01,693 INFO L280 TraceCheckUtils]: 44: Hoare triple {7251#(<= main_~i~1 5)} assume !!(~i~1 < 8); {7251#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:01,694 INFO L280 TraceCheckUtils]: 45: Hoare triple {7251#(<= main_~i~1 5)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {7251#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:01,694 INFO L280 TraceCheckUtils]: 46: Hoare triple {7251#(<= main_~i~1 5)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {7251#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:01,695 INFO L280 TraceCheckUtils]: 47: Hoare triple {7251#(<= main_~i~1 5)} havoc #t~nondet21; {7251#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:01,695 INFO L280 TraceCheckUtils]: 48: Hoare triple {7251#(<= main_~i~1 5)} #t~post20 := ~i~1; {7252#(<= |main_#t~post20| 5)} is VALID [2020-07-18 06:35:01,696 INFO L280 TraceCheckUtils]: 49: Hoare triple {7252#(<= |main_#t~post20| 5)} ~i~1 := 1 + #t~post20; {7253#(<= main_~i~1 6)} is VALID [2020-07-18 06:35:01,697 INFO L280 TraceCheckUtils]: 50: Hoare triple {7253#(<= main_~i~1 6)} havoc #t~post20; {7253#(<= main_~i~1 6)} is VALID [2020-07-18 06:35:01,698 INFO L280 TraceCheckUtils]: 51: Hoare triple {7253#(<= main_~i~1 6)} assume !(~i~1 < 8); {7235#false} is VALID [2020-07-18 06:35:01,698 INFO L280 TraceCheckUtils]: 52: Hoare triple {7235#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {7235#false} is VALID [2020-07-18 06:35:01,698 INFO L263 TraceCheckUtils]: 53: Hoare triple {7235#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {7235#false} is VALID [2020-07-18 06:35:01,699 INFO L280 TraceCheckUtils]: 54: Hoare triple {7235#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {7235#false} is VALID [2020-07-18 06:35:01,699 INFO L280 TraceCheckUtils]: 55: Hoare triple {7235#false} ~start~0 := 0; {7235#false} is VALID [2020-07-18 06:35:01,699 INFO L280 TraceCheckUtils]: 56: Hoare triple {7235#false} ~i~0 := -1; {7235#false} is VALID [2020-07-18 06:35:01,699 INFO L280 TraceCheckUtils]: 57: Hoare triple {7235#false} ~j~0 := -1; {7235#false} is VALID [2020-07-18 06:35:01,699 INFO L280 TraceCheckUtils]: 58: Hoare triple {7235#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {7235#false} is VALID [2020-07-18 06:35:01,700 INFO L280 TraceCheckUtils]: 59: Hoare triple {7235#false} assume !(~str.base == 0 && ~str.offset == 0); {7235#false} is VALID [2020-07-18 06:35:01,700 INFO L280 TraceCheckUtils]: 60: Hoare triple {7235#false} #t~post2 := ~i~0; {7235#false} is VALID [2020-07-18 06:35:01,700 INFO L280 TraceCheckUtils]: 61: Hoare triple {7235#false} ~i~0 := 1 + #t~post2; {7235#false} is VALID [2020-07-18 06:35:01,700 INFO L280 TraceCheckUtils]: 62: Hoare triple {7235#false} havoc #t~post2; {7235#false} is VALID [2020-07-18 06:35:01,701 INFO L280 TraceCheckUtils]: 63: Hoare triple {7235#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {7235#false} is VALID [2020-07-18 06:35:01,701 INFO L280 TraceCheckUtils]: 64: Hoare triple {7235#false} #t~switch4 := 0 == #t~mem3; {7235#false} is VALID [2020-07-18 06:35:01,701 INFO L280 TraceCheckUtils]: 65: Hoare triple {7235#false} assume #t~switch4; {7235#false} is VALID [2020-07-18 06:35:01,701 INFO L280 TraceCheckUtils]: 66: Hoare triple {7235#false} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {7235#false} is VALID [2020-07-18 06:35:01,701 INFO L280 TraceCheckUtils]: 67: Hoare triple {7235#false} #t~short7 := 32 == #t~mem5; {7235#false} is VALID [2020-07-18 06:35:01,702 INFO L280 TraceCheckUtils]: 68: Hoare triple {7235#false} assume #t~short7; {7235#false} is VALID [2020-07-18 06:35:01,702 INFO L280 TraceCheckUtils]: 69: Hoare triple {7235#false} assume !#t~short7; {7235#false} is VALID [2020-07-18 06:35:01,702 INFO L280 TraceCheckUtils]: 70: Hoare triple {7235#false} havoc #t~short7; {7235#false} is VALID [2020-07-18 06:35:01,702 INFO L280 TraceCheckUtils]: 71: Hoare triple {7235#false} havoc #t~mem6; {7235#false} is VALID [2020-07-18 06:35:01,702 INFO L280 TraceCheckUtils]: 72: Hoare triple {7235#false} havoc #t~mem5; {7235#false} is VALID [2020-07-18 06:35:01,703 INFO L280 TraceCheckUtils]: 73: Hoare triple {7235#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {7235#false} is VALID [2020-07-18 06:35:01,703 INFO L280 TraceCheckUtils]: 74: Hoare triple {7235#false} assume !(34 == #t~mem9); {7235#false} is VALID [2020-07-18 06:35:01,703 INFO L280 TraceCheckUtils]: 75: Hoare triple {7235#false} havoc #t~mem9; {7235#false} is VALID [2020-07-18 06:35:01,703 INFO L280 TraceCheckUtils]: 76: Hoare triple {7235#false} ~j~0 := ~i~0 - 1; {7235#false} is VALID [2020-07-18 06:35:01,703 INFO L280 TraceCheckUtils]: 77: Hoare triple {7235#false} #t~short14 := 0 < ~j~0; {7235#false} is VALID [2020-07-18 06:35:01,704 INFO L280 TraceCheckUtils]: 78: Hoare triple {7235#false} assume !#t~short14; {7235#false} is VALID [2020-07-18 06:35:01,704 INFO L280 TraceCheckUtils]: 79: Hoare triple {7235#false} assume !#t~short14; {7235#false} is VALID [2020-07-18 06:35:01,704 INFO L280 TraceCheckUtils]: 80: Hoare triple {7235#false} havoc #t~short14; {7235#false} is VALID [2020-07-18 06:35:01,704 INFO L280 TraceCheckUtils]: 81: Hoare triple {7235#false} havoc #t~mem11; {7235#false} is VALID [2020-07-18 06:35:01,704 INFO L280 TraceCheckUtils]: 82: Hoare triple {7235#false} havoc #t~mem12; {7235#false} is VALID [2020-07-18 06:35:01,705 INFO L280 TraceCheckUtils]: 83: Hoare triple {7235#false} havoc #t~short13; {7235#false} is VALID [2020-07-18 06:35:01,705 INFO L280 TraceCheckUtils]: 84: Hoare triple {7235#false} #t~short17 := 0 < ~j~0; {7235#false} is VALID [2020-07-18 06:35:01,705 INFO L280 TraceCheckUtils]: 85: Hoare triple {7235#false} assume !#t~short17; {7235#false} is VALID [2020-07-18 06:35:01,705 INFO L280 TraceCheckUtils]: 86: Hoare triple {7235#false} assume !#t~short17; {7235#false} is VALID [2020-07-18 06:35:01,706 INFO L280 TraceCheckUtils]: 87: Hoare triple {7235#false} havoc #t~mem16; {7235#false} is VALID [2020-07-18 06:35:01,706 INFO L280 TraceCheckUtils]: 88: Hoare triple {7235#false} havoc #t~short17; {7235#false} is VALID [2020-07-18 06:35:01,706 INFO L280 TraceCheckUtils]: 89: Hoare triple {7235#false} assume ~start~0 <= ~j~0; {7235#false} is VALID [2020-07-18 06:35:01,706 INFO L280 TraceCheckUtils]: 90: Hoare triple {7235#false} assume !(1 + (~j~0 - ~start~0) >= 2); {7235#false} is VALID [2020-07-18 06:35:01,706 INFO L263 TraceCheckUtils]: 91: Hoare triple {7235#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {7234#true} is VALID [2020-07-18 06:35:01,707 INFO L280 TraceCheckUtils]: 92: Hoare triple {7234#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {7234#true} is VALID [2020-07-18 06:35:01,707 INFO L280 TraceCheckUtils]: 93: Hoare triple {7234#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {7234#true} is VALID [2020-07-18 06:35:01,707 INFO L280 TraceCheckUtils]: 94: Hoare triple {7234#true} ~n := #in~n; {7234#true} is VALID [2020-07-18 06:35:01,707 INFO L280 TraceCheckUtils]: 95: Hoare triple {7234#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {7234#true} is VALID [2020-07-18 06:35:01,707 INFO L280 TraceCheckUtils]: 96: Hoare triple {7234#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {7234#true} is VALID [2020-07-18 06:35:01,708 INFO L280 TraceCheckUtils]: 97: Hoare triple {7234#true} havoc #t~ret0.base, #t~ret0.offset; {7234#true} is VALID [2020-07-18 06:35:01,708 INFO L280 TraceCheckUtils]: 98: Hoare triple {7234#true} assume true; {7234#true} is VALID [2020-07-18 06:35:01,708 INFO L275 TraceCheckUtils]: 99: Hoare quadruple {7234#true} {7235#false} #227#return; {7235#false} is VALID [2020-07-18 06:35:01,708 INFO L280 TraceCheckUtils]: 100: Hoare triple {7235#false} havoc #t~ret19.base, #t~ret19.offset; {7235#false} is VALID [2020-07-18 06:35:01,708 INFO L263 TraceCheckUtils]: 101: Hoare triple {7235#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {7235#false} is VALID [2020-07-18 06:35:01,709 INFO L280 TraceCheckUtils]: 102: Hoare triple {7235#false} ~cond := #in~cond; {7235#false} is VALID [2020-07-18 06:35:01,709 INFO L280 TraceCheckUtils]: 103: Hoare triple {7235#false} assume 0 == ~cond; {7235#false} is VALID [2020-07-18 06:35:01,709 INFO L280 TraceCheckUtils]: 104: Hoare triple {7235#false} assume !false; {7235#false} is VALID [2020-07-18 06:35:01,721 INFO L134 CoverageAnalysis]: Checked inductivity of 111 backedges. 0 proven. 111 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:35:01,722 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1604000418] [2020-07-18 06:35:01,722 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:35:01,722 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16] total 16 [2020-07-18 06:35:01,722 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [861322474] [2020-07-18 06:35:01,723 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 105 [2020-07-18 06:35:01,723 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:01,724 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2020-07-18 06:35:01,866 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:01,867 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2020-07-18 06:35:01,867 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:01,867 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2020-07-18 06:35:01,868 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=65, Invalid=175, Unknown=0, NotChecked=0, Total=240 [2020-07-18 06:35:01,868 INFO L87 Difference]: Start difference. First operand 147 states and 157 transitions. Second operand 16 states. [2020-07-18 06:35:04,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:04,319 INFO L93 Difference]: Finished difference Result 254 states and 274 transitions. [2020-07-18 06:35:04,319 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2020-07-18 06:35:04,319 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 105 [2020-07-18 06:35:04,319 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:04,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2020-07-18 06:35:04,323 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 274 transitions. [2020-07-18 06:35:04,323 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2020-07-18 06:35:04,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 274 transitions. [2020-07-18 06:35:04,327 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 274 transitions. [2020-07-18 06:35:04,640 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 274 edges. 274 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:04,645 INFO L225 Difference]: With dead ends: 254 [2020-07-18 06:35:04,645 INFO L226 Difference]: Without dead ends: 159 [2020-07-18 06:35:04,646 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 31 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 107 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=245, Invalid=511, Unknown=0, NotChecked=0, Total=756 [2020-07-18 06:35:04,648 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 159 states. [2020-07-18 06:35:04,770 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 159 to 154. [2020-07-18 06:35:04,771 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:04,771 INFO L82 GeneralOperation]: Start isEquivalent. First operand 159 states. Second operand 154 states. [2020-07-18 06:35:04,771 INFO L74 IsIncluded]: Start isIncluded. First operand 159 states. Second operand 154 states. [2020-07-18 06:35:04,771 INFO L87 Difference]: Start difference. First operand 159 states. Second operand 154 states. [2020-07-18 06:35:04,778 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:04,779 INFO L93 Difference]: Finished difference Result 159 states and 169 transitions. [2020-07-18 06:35:04,779 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 169 transitions. [2020-07-18 06:35:04,780 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:04,780 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:04,780 INFO L74 IsIncluded]: Start isIncluded. First operand 154 states. Second operand 159 states. [2020-07-18 06:35:04,780 INFO L87 Difference]: Start difference. First operand 154 states. Second operand 159 states. [2020-07-18 06:35:04,787 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:04,788 INFO L93 Difference]: Finished difference Result 159 states and 169 transitions. [2020-07-18 06:35:04,788 INFO L276 IsEmpty]: Start isEmpty. Operand 159 states and 169 transitions. [2020-07-18 06:35:04,789 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:04,789 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:04,789 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:04,789 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:04,790 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 154 states. [2020-07-18 06:35:04,794 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 154 states to 154 states and 164 transitions. [2020-07-18 06:35:04,794 INFO L78 Accepts]: Start accepts. Automaton has 154 states and 164 transitions. Word has length 105 [2020-07-18 06:35:04,795 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:04,795 INFO L479 AbstractCegarLoop]: Abstraction has 154 states and 164 transitions. [2020-07-18 06:35:04,795 INFO L480 AbstractCegarLoop]: Interpolant automaton has 16 states. [2020-07-18 06:35:04,795 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 154 states and 164 transitions. [2020-07-18 06:35:04,978 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 164 edges. 164 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:04,979 INFO L276 IsEmpty]: Start isEmpty. Operand 154 states and 164 transitions. [2020-07-18 06:35:04,980 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 113 [2020-07-18 06:35:04,980 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:04,980 INFO L422 BasicCegarLoop]: trace histogram [7, 7, 7, 7, 7, 7, 7, 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, 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, 1, 1, 1] [2020-07-18 06:35:04,981 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2020-07-18 06:35:04,981 INFO L427 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:04,981 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:04,981 INFO L82 PathProgramCache]: Analyzing trace with hash -612628213, now seen corresponding path program 7 times [2020-07-18 06:35:04,982 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:04,982 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1682919038] [2020-07-18 06:35:04,982 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:05,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:05,363 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:05,371 INFO L280 TraceCheckUtils]: 0: Hoare triple {8453#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {8423#true} is VALID [2020-07-18 06:35:05,372 INFO L280 TraceCheckUtils]: 1: Hoare triple {8423#true} #valid := #valid[0 := 0]; {8423#true} is VALID [2020-07-18 06:35:05,372 INFO L280 TraceCheckUtils]: 2: Hoare triple {8423#true} assume 0 < #StackHeapBarrier; {8423#true} is VALID [2020-07-18 06:35:05,373 INFO L280 TraceCheckUtils]: 3: Hoare triple {8423#true} assume true; {8423#true} is VALID [2020-07-18 06:35:05,373 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {8423#true} {8423#true} #231#return; {8423#true} is VALID [2020-07-18 06:35:05,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:05,381 INFO L280 TraceCheckUtils]: 0: Hoare triple {8423#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {8423#true} is VALID [2020-07-18 06:35:05,381 INFO L280 TraceCheckUtils]: 1: Hoare triple {8423#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {8423#true} is VALID [2020-07-18 06:35:05,382 INFO L280 TraceCheckUtils]: 2: Hoare triple {8423#true} ~n := #in~n; {8423#true} is VALID [2020-07-18 06:35:05,382 INFO L280 TraceCheckUtils]: 3: Hoare triple {8423#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {8423#true} is VALID [2020-07-18 06:35:05,382 INFO L280 TraceCheckUtils]: 4: Hoare triple {8423#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {8423#true} is VALID [2020-07-18 06:35:05,382 INFO L280 TraceCheckUtils]: 5: Hoare triple {8423#true} havoc #t~ret0.base, #t~ret0.offset; {8423#true} is VALID [2020-07-18 06:35:05,383 INFO L280 TraceCheckUtils]: 6: Hoare triple {8423#true} assume true; {8423#true} is VALID [2020-07-18 06:35:05,383 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {8423#true} {8424#false} #227#return; {8424#false} is VALID [2020-07-18 06:35:05,384 INFO L263 TraceCheckUtils]: 0: Hoare triple {8423#true} call ULTIMATE.init(); {8453#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:05,384 INFO L280 TraceCheckUtils]: 1: Hoare triple {8453#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {8423#true} is VALID [2020-07-18 06:35:05,384 INFO L280 TraceCheckUtils]: 2: Hoare triple {8423#true} #valid := #valid[0 := 0]; {8423#true} is VALID [2020-07-18 06:35:05,384 INFO L280 TraceCheckUtils]: 3: Hoare triple {8423#true} assume 0 < #StackHeapBarrier; {8423#true} is VALID [2020-07-18 06:35:05,385 INFO L280 TraceCheckUtils]: 4: Hoare triple {8423#true} assume true; {8423#true} is VALID [2020-07-18 06:35:05,385 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {8423#true} {8423#true} #231#return; {8423#true} is VALID [2020-07-18 06:35:05,385 INFO L263 TraceCheckUtils]: 6: Hoare triple {8423#true} call #t~ret23 := main(); {8423#true} is VALID [2020-07-18 06:35:05,385 INFO L280 TraceCheckUtils]: 7: Hoare triple {8423#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {8423#true} is VALID [2020-07-18 06:35:05,386 INFO L280 TraceCheckUtils]: 8: Hoare triple {8423#true} ~i~1 := 0; {8430#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:05,386 INFO L280 TraceCheckUtils]: 9: Hoare triple {8430#(= 0 main_~i~1)} assume !!(~i~1 < 8); {8430#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:05,387 INFO L280 TraceCheckUtils]: 10: Hoare triple {8430#(= 0 main_~i~1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {8430#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:05,388 INFO L280 TraceCheckUtils]: 11: Hoare triple {8430#(= 0 main_~i~1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {8430#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:05,389 INFO L280 TraceCheckUtils]: 12: Hoare triple {8430#(= 0 main_~i~1)} havoc #t~nondet21; {8430#(= 0 main_~i~1)} is VALID [2020-07-18 06:35:05,390 INFO L280 TraceCheckUtils]: 13: Hoare triple {8430#(= 0 main_~i~1)} #t~post20 := ~i~1; {8431#(= 0 |main_#t~post20|)} is VALID [2020-07-18 06:35:05,391 INFO L280 TraceCheckUtils]: 14: Hoare triple {8431#(= 0 |main_#t~post20|)} ~i~1 := 1 + #t~post20; {8432#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:05,392 INFO L280 TraceCheckUtils]: 15: Hoare triple {8432#(<= main_~i~1 1)} havoc #t~post20; {8432#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:05,393 INFO L280 TraceCheckUtils]: 16: Hoare triple {8432#(<= main_~i~1 1)} assume !!(~i~1 < 8); {8432#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:05,394 INFO L280 TraceCheckUtils]: 17: Hoare triple {8432#(<= main_~i~1 1)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {8432#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:05,395 INFO L280 TraceCheckUtils]: 18: Hoare triple {8432#(<= main_~i~1 1)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {8432#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:05,396 INFO L280 TraceCheckUtils]: 19: Hoare triple {8432#(<= main_~i~1 1)} havoc #t~nondet21; {8432#(<= main_~i~1 1)} is VALID [2020-07-18 06:35:05,397 INFO L280 TraceCheckUtils]: 20: Hoare triple {8432#(<= main_~i~1 1)} #t~post20 := ~i~1; {8433#(<= |main_#t~post20| 1)} is VALID [2020-07-18 06:35:05,398 INFO L280 TraceCheckUtils]: 21: Hoare triple {8433#(<= |main_#t~post20| 1)} ~i~1 := 1 + #t~post20; {8434#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:05,399 INFO L280 TraceCheckUtils]: 22: Hoare triple {8434#(<= main_~i~1 2)} havoc #t~post20; {8434#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:05,399 INFO L280 TraceCheckUtils]: 23: Hoare triple {8434#(<= main_~i~1 2)} assume !!(~i~1 < 8); {8434#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:05,400 INFO L280 TraceCheckUtils]: 24: Hoare triple {8434#(<= main_~i~1 2)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {8434#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:05,401 INFO L280 TraceCheckUtils]: 25: Hoare triple {8434#(<= main_~i~1 2)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {8434#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:05,402 INFO L280 TraceCheckUtils]: 26: Hoare triple {8434#(<= main_~i~1 2)} havoc #t~nondet21; {8434#(<= main_~i~1 2)} is VALID [2020-07-18 06:35:05,403 INFO L280 TraceCheckUtils]: 27: Hoare triple {8434#(<= main_~i~1 2)} #t~post20 := ~i~1; {8435#(<= |main_#t~post20| 2)} is VALID [2020-07-18 06:35:05,404 INFO L280 TraceCheckUtils]: 28: Hoare triple {8435#(<= |main_#t~post20| 2)} ~i~1 := 1 + #t~post20; {8436#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:05,404 INFO L280 TraceCheckUtils]: 29: Hoare triple {8436#(<= main_~i~1 3)} havoc #t~post20; {8436#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:05,405 INFO L280 TraceCheckUtils]: 30: Hoare triple {8436#(<= main_~i~1 3)} assume !!(~i~1 < 8); {8436#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:05,406 INFO L280 TraceCheckUtils]: 31: Hoare triple {8436#(<= main_~i~1 3)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {8436#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:05,407 INFO L280 TraceCheckUtils]: 32: Hoare triple {8436#(<= main_~i~1 3)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {8436#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:05,407 INFO L280 TraceCheckUtils]: 33: Hoare triple {8436#(<= main_~i~1 3)} havoc #t~nondet21; {8436#(<= main_~i~1 3)} is VALID [2020-07-18 06:35:05,408 INFO L280 TraceCheckUtils]: 34: Hoare triple {8436#(<= main_~i~1 3)} #t~post20 := ~i~1; {8437#(<= |main_#t~post20| 3)} is VALID [2020-07-18 06:35:05,409 INFO L280 TraceCheckUtils]: 35: Hoare triple {8437#(<= |main_#t~post20| 3)} ~i~1 := 1 + #t~post20; {8438#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:05,410 INFO L280 TraceCheckUtils]: 36: Hoare triple {8438#(<= main_~i~1 4)} havoc #t~post20; {8438#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:05,411 INFO L280 TraceCheckUtils]: 37: Hoare triple {8438#(<= main_~i~1 4)} assume !!(~i~1 < 8); {8438#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:05,411 INFO L280 TraceCheckUtils]: 38: Hoare triple {8438#(<= main_~i~1 4)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {8438#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:05,412 INFO L280 TraceCheckUtils]: 39: Hoare triple {8438#(<= main_~i~1 4)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {8438#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:05,413 INFO L280 TraceCheckUtils]: 40: Hoare triple {8438#(<= main_~i~1 4)} havoc #t~nondet21; {8438#(<= main_~i~1 4)} is VALID [2020-07-18 06:35:05,414 INFO L280 TraceCheckUtils]: 41: Hoare triple {8438#(<= main_~i~1 4)} #t~post20 := ~i~1; {8439#(<= |main_#t~post20| 4)} is VALID [2020-07-18 06:35:05,415 INFO L280 TraceCheckUtils]: 42: Hoare triple {8439#(<= |main_#t~post20| 4)} ~i~1 := 1 + #t~post20; {8440#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:05,416 INFO L280 TraceCheckUtils]: 43: Hoare triple {8440#(<= main_~i~1 5)} havoc #t~post20; {8440#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:05,417 INFO L280 TraceCheckUtils]: 44: Hoare triple {8440#(<= main_~i~1 5)} assume !!(~i~1 < 8); {8440#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:05,417 INFO L280 TraceCheckUtils]: 45: Hoare triple {8440#(<= main_~i~1 5)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {8440#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:05,418 INFO L280 TraceCheckUtils]: 46: Hoare triple {8440#(<= main_~i~1 5)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {8440#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:05,419 INFO L280 TraceCheckUtils]: 47: Hoare triple {8440#(<= main_~i~1 5)} havoc #t~nondet21; {8440#(<= main_~i~1 5)} is VALID [2020-07-18 06:35:05,420 INFO L280 TraceCheckUtils]: 48: Hoare triple {8440#(<= main_~i~1 5)} #t~post20 := ~i~1; {8441#(<= |main_#t~post20| 5)} is VALID [2020-07-18 06:35:05,421 INFO L280 TraceCheckUtils]: 49: Hoare triple {8441#(<= |main_#t~post20| 5)} ~i~1 := 1 + #t~post20; {8442#(<= main_~i~1 6)} is VALID [2020-07-18 06:35:05,422 INFO L280 TraceCheckUtils]: 50: Hoare triple {8442#(<= main_~i~1 6)} havoc #t~post20; {8442#(<= main_~i~1 6)} is VALID [2020-07-18 06:35:05,423 INFO L280 TraceCheckUtils]: 51: Hoare triple {8442#(<= main_~i~1 6)} assume !!(~i~1 < 8); {8442#(<= main_~i~1 6)} is VALID [2020-07-18 06:35:05,424 INFO L280 TraceCheckUtils]: 52: Hoare triple {8442#(<= main_~i~1 6)} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {8442#(<= main_~i~1 6)} is VALID [2020-07-18 06:35:05,424 INFO L280 TraceCheckUtils]: 53: Hoare triple {8442#(<= main_~i~1 6)} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {8442#(<= main_~i~1 6)} is VALID [2020-07-18 06:35:05,425 INFO L280 TraceCheckUtils]: 54: Hoare triple {8442#(<= main_~i~1 6)} havoc #t~nondet21; {8442#(<= main_~i~1 6)} is VALID [2020-07-18 06:35:05,426 INFO L280 TraceCheckUtils]: 55: Hoare triple {8442#(<= main_~i~1 6)} #t~post20 := ~i~1; {8443#(<= |main_#t~post20| 6)} is VALID [2020-07-18 06:35:05,427 INFO L280 TraceCheckUtils]: 56: Hoare triple {8443#(<= |main_#t~post20| 6)} ~i~1 := 1 + #t~post20; {8444#(<= main_~i~1 7)} is VALID [2020-07-18 06:35:05,428 INFO L280 TraceCheckUtils]: 57: Hoare triple {8444#(<= main_~i~1 7)} havoc #t~post20; {8444#(<= main_~i~1 7)} is VALID [2020-07-18 06:35:05,429 INFO L280 TraceCheckUtils]: 58: Hoare triple {8444#(<= main_~i~1 7)} assume !(~i~1 < 8); {8424#false} is VALID [2020-07-18 06:35:05,429 INFO L280 TraceCheckUtils]: 59: Hoare triple {8424#false} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {8424#false} is VALID [2020-07-18 06:35:05,429 INFO L263 TraceCheckUtils]: 60: Hoare triple {8424#false} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {8424#false} is VALID [2020-07-18 06:35:05,430 INFO L280 TraceCheckUtils]: 61: Hoare triple {8424#false} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {8424#false} is VALID [2020-07-18 06:35:05,430 INFO L280 TraceCheckUtils]: 62: Hoare triple {8424#false} ~start~0 := 0; {8424#false} is VALID [2020-07-18 06:35:05,430 INFO L280 TraceCheckUtils]: 63: Hoare triple {8424#false} ~i~0 := -1; {8424#false} is VALID [2020-07-18 06:35:05,430 INFO L280 TraceCheckUtils]: 64: Hoare triple {8424#false} ~j~0 := -1; {8424#false} is VALID [2020-07-18 06:35:05,430 INFO L280 TraceCheckUtils]: 65: Hoare triple {8424#false} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {8424#false} is VALID [2020-07-18 06:35:05,431 INFO L280 TraceCheckUtils]: 66: Hoare triple {8424#false} assume !(~str.base == 0 && ~str.offset == 0); {8424#false} is VALID [2020-07-18 06:35:05,431 INFO L280 TraceCheckUtils]: 67: Hoare triple {8424#false} #t~post2 := ~i~0; {8424#false} is VALID [2020-07-18 06:35:05,431 INFO L280 TraceCheckUtils]: 68: Hoare triple {8424#false} ~i~0 := 1 + #t~post2; {8424#false} is VALID [2020-07-18 06:35:05,431 INFO L280 TraceCheckUtils]: 69: Hoare triple {8424#false} havoc #t~post2; {8424#false} is VALID [2020-07-18 06:35:05,431 INFO L280 TraceCheckUtils]: 70: Hoare triple {8424#false} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {8424#false} is VALID [2020-07-18 06:35:05,432 INFO L280 TraceCheckUtils]: 71: Hoare triple {8424#false} #t~switch4 := 0 == #t~mem3; {8424#false} is VALID [2020-07-18 06:35:05,432 INFO L280 TraceCheckUtils]: 72: Hoare triple {8424#false} assume #t~switch4; {8424#false} is VALID [2020-07-18 06:35:05,432 INFO L280 TraceCheckUtils]: 73: Hoare triple {8424#false} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {8424#false} is VALID [2020-07-18 06:35:05,432 INFO L280 TraceCheckUtils]: 74: Hoare triple {8424#false} #t~short7 := 32 == #t~mem5; {8424#false} is VALID [2020-07-18 06:35:05,432 INFO L280 TraceCheckUtils]: 75: Hoare triple {8424#false} assume #t~short7; {8424#false} is VALID [2020-07-18 06:35:05,433 INFO L280 TraceCheckUtils]: 76: Hoare triple {8424#false} assume !#t~short7; {8424#false} is VALID [2020-07-18 06:35:05,433 INFO L280 TraceCheckUtils]: 77: Hoare triple {8424#false} havoc #t~short7; {8424#false} is VALID [2020-07-18 06:35:05,433 INFO L280 TraceCheckUtils]: 78: Hoare triple {8424#false} havoc #t~mem6; {8424#false} is VALID [2020-07-18 06:35:05,433 INFO L280 TraceCheckUtils]: 79: Hoare triple {8424#false} havoc #t~mem5; {8424#false} is VALID [2020-07-18 06:35:05,433 INFO L280 TraceCheckUtils]: 80: Hoare triple {8424#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {8424#false} is VALID [2020-07-18 06:35:05,434 INFO L280 TraceCheckUtils]: 81: Hoare triple {8424#false} assume !(34 == #t~mem9); {8424#false} is VALID [2020-07-18 06:35:05,434 INFO L280 TraceCheckUtils]: 82: Hoare triple {8424#false} havoc #t~mem9; {8424#false} is VALID [2020-07-18 06:35:05,434 INFO L280 TraceCheckUtils]: 83: Hoare triple {8424#false} ~j~0 := ~i~0 - 1; {8424#false} is VALID [2020-07-18 06:35:05,434 INFO L280 TraceCheckUtils]: 84: Hoare triple {8424#false} #t~short14 := 0 < ~j~0; {8424#false} is VALID [2020-07-18 06:35:05,434 INFO L280 TraceCheckUtils]: 85: Hoare triple {8424#false} assume !#t~short14; {8424#false} is VALID [2020-07-18 06:35:05,435 INFO L280 TraceCheckUtils]: 86: Hoare triple {8424#false} assume !#t~short14; {8424#false} is VALID [2020-07-18 06:35:05,435 INFO L280 TraceCheckUtils]: 87: Hoare triple {8424#false} havoc #t~short14; {8424#false} is VALID [2020-07-18 06:35:05,435 INFO L280 TraceCheckUtils]: 88: Hoare triple {8424#false} havoc #t~mem11; {8424#false} is VALID [2020-07-18 06:35:05,435 INFO L280 TraceCheckUtils]: 89: Hoare triple {8424#false} havoc #t~mem12; {8424#false} is VALID [2020-07-18 06:35:05,436 INFO L280 TraceCheckUtils]: 90: Hoare triple {8424#false} havoc #t~short13; {8424#false} is VALID [2020-07-18 06:35:05,436 INFO L280 TraceCheckUtils]: 91: Hoare triple {8424#false} #t~short17 := 0 < ~j~0; {8424#false} is VALID [2020-07-18 06:35:05,436 INFO L280 TraceCheckUtils]: 92: Hoare triple {8424#false} assume !#t~short17; {8424#false} is VALID [2020-07-18 06:35:05,436 INFO L280 TraceCheckUtils]: 93: Hoare triple {8424#false} assume !#t~short17; {8424#false} is VALID [2020-07-18 06:35:05,436 INFO L280 TraceCheckUtils]: 94: Hoare triple {8424#false} havoc #t~mem16; {8424#false} is VALID [2020-07-18 06:35:05,437 INFO L280 TraceCheckUtils]: 95: Hoare triple {8424#false} havoc #t~short17; {8424#false} is VALID [2020-07-18 06:35:05,437 INFO L280 TraceCheckUtils]: 96: Hoare triple {8424#false} assume ~start~0 <= ~j~0; {8424#false} is VALID [2020-07-18 06:35:05,437 INFO L280 TraceCheckUtils]: 97: Hoare triple {8424#false} assume !(1 + (~j~0 - ~start~0) >= 2); {8424#false} is VALID [2020-07-18 06:35:05,437 INFO L263 TraceCheckUtils]: 98: Hoare triple {8424#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {8423#true} is VALID [2020-07-18 06:35:05,437 INFO L280 TraceCheckUtils]: 99: Hoare triple {8423#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {8423#true} is VALID [2020-07-18 06:35:05,438 INFO L280 TraceCheckUtils]: 100: Hoare triple {8423#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {8423#true} is VALID [2020-07-18 06:35:05,438 INFO L280 TraceCheckUtils]: 101: Hoare triple {8423#true} ~n := #in~n; {8423#true} is VALID [2020-07-18 06:35:05,438 INFO L280 TraceCheckUtils]: 102: Hoare triple {8423#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {8423#true} is VALID [2020-07-18 06:35:05,439 INFO L280 TraceCheckUtils]: 103: Hoare triple {8423#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {8423#true} is VALID [2020-07-18 06:35:05,439 INFO L280 TraceCheckUtils]: 104: Hoare triple {8423#true} havoc #t~ret0.base, #t~ret0.offset; {8423#true} is VALID [2020-07-18 06:35:05,439 INFO L280 TraceCheckUtils]: 105: Hoare triple {8423#true} assume true; {8423#true} is VALID [2020-07-18 06:35:05,440 INFO L275 TraceCheckUtils]: 106: Hoare quadruple {8423#true} {8424#false} #227#return; {8424#false} is VALID [2020-07-18 06:35:05,440 INFO L280 TraceCheckUtils]: 107: Hoare triple {8424#false} havoc #t~ret19.base, #t~ret19.offset; {8424#false} is VALID [2020-07-18 06:35:05,440 INFO L263 TraceCheckUtils]: 108: Hoare triple {8424#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {8424#false} is VALID [2020-07-18 06:35:05,440 INFO L280 TraceCheckUtils]: 109: Hoare triple {8424#false} ~cond := #in~cond; {8424#false} is VALID [2020-07-18 06:35:05,441 INFO L280 TraceCheckUtils]: 110: Hoare triple {8424#false} assume 0 == ~cond; {8424#false} is VALID [2020-07-18 06:35:05,441 INFO L280 TraceCheckUtils]: 111: Hoare triple {8424#false} assume !false; {8424#false} is VALID [2020-07-18 06:35:05,458 INFO L134 CoverageAnalysis]: Checked inductivity of 154 backedges. 0 proven. 154 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-18 06:35:05,458 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1682919038] [2020-07-18 06:35:05,459 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:35:05,459 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18] total 18 [2020-07-18 06:35:05,459 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1288374872] [2020-07-18 06:35:05,460 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 112 [2020-07-18 06:35:05,461 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:05,461 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2020-07-18 06:35:05,606 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:05,606 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2020-07-18 06:35:05,607 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:05,607 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2020-07-18 06:35:05,607 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=82, Invalid=224, Unknown=0, NotChecked=0, Total=306 [2020-07-18 06:35:05,608 INFO L87 Difference]: Start difference. First operand 154 states and 164 transitions. Second operand 18 states. [2020-07-18 06:35:07,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:07,947 INFO L93 Difference]: Finished difference Result 256 states and 276 transitions. [2020-07-18 06:35:07,947 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2020-07-18 06:35:07,947 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 112 [2020-07-18 06:35:07,948 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:07,948 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-18 06:35:07,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 276 transitions. [2020-07-18 06:35:07,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2020-07-18 06:35:07,955 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 276 transitions. [2020-07-18 06:35:07,956 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 25 states and 276 transitions. [2020-07-18 06:35:08,294 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 276 edges. 276 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:08,300 INFO L225 Difference]: With dead ends: 256 [2020-07-18 06:35:08,300 INFO L226 Difference]: Without dead ends: 161 [2020-07-18 06:35:08,302 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 146 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=320, Invalid=672, Unknown=0, NotChecked=0, Total=992 [2020-07-18 06:35:08,303 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 161 states. [2020-07-18 06:35:08,457 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 161 to 161. [2020-07-18 06:35:08,458 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:08,458 INFO L82 GeneralOperation]: Start isEquivalent. First operand 161 states. Second operand 161 states. [2020-07-18 06:35:08,458 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 161 states. [2020-07-18 06:35:08,458 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 161 states. [2020-07-18 06:35:08,461 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:08,462 INFO L93 Difference]: Finished difference Result 161 states and 171 transitions. [2020-07-18 06:35:08,462 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 171 transitions. [2020-07-18 06:35:08,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:08,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:08,463 INFO L74 IsIncluded]: Start isIncluded. First operand 161 states. Second operand 161 states. [2020-07-18 06:35:08,463 INFO L87 Difference]: Start difference. First operand 161 states. Second operand 161 states. [2020-07-18 06:35:08,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:08,467 INFO L93 Difference]: Finished difference Result 161 states and 171 transitions. [2020-07-18 06:35:08,467 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 171 transitions. [2020-07-18 06:35:08,467 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:08,468 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:08,468 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:08,468 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:08,468 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 161 states. [2020-07-18 06:35:08,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 171 transitions. [2020-07-18 06:35:08,472 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 171 transitions. Word has length 112 [2020-07-18 06:35:08,472 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:08,472 INFO L479 AbstractCegarLoop]: Abstraction has 161 states and 171 transitions. [2020-07-18 06:35:08,472 INFO L480 AbstractCegarLoop]: Interpolant automaton has 18 states. [2020-07-18 06:35:08,472 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 161 states and 171 transitions. [2020-07-18 06:35:08,654 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 171 edges. 171 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:08,654 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 171 transitions. [2020-07-18 06:35:08,655 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 120 [2020-07-18 06:35:08,655 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:08,655 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 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, 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, 1, 1, 1] [2020-07-18 06:35:08,656 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2020-07-18 06:35:08,656 INFO L427 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:08,656 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:08,657 INFO L82 PathProgramCache]: Analyzing trace with hash 1175857321, now seen corresponding path program 8 times [2020-07-18 06:35:08,657 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:08,657 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [2083194268] [2020-07-18 06:35:08,657 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:08,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:08,735 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:08,738 INFO L280 TraceCheckUtils]: 0: Hoare triple {9656#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {9640#true} is VALID [2020-07-18 06:35:08,739 INFO L280 TraceCheckUtils]: 1: Hoare triple {9640#true} #valid := #valid[0 := 0]; {9640#true} is VALID [2020-07-18 06:35:08,739 INFO L280 TraceCheckUtils]: 2: Hoare triple {9640#true} assume 0 < #StackHeapBarrier; {9640#true} is VALID [2020-07-18 06:35:08,739 INFO L280 TraceCheckUtils]: 3: Hoare triple {9640#true} assume true; {9640#true} is VALID [2020-07-18 06:35:08,739 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {9640#true} {9640#true} #231#return; {9640#true} is VALID [2020-07-18 06:35:08,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:08,744 INFO L280 TraceCheckUtils]: 0: Hoare triple {9640#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {9640#true} is VALID [2020-07-18 06:35:08,745 INFO L280 TraceCheckUtils]: 1: Hoare triple {9640#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {9640#true} is VALID [2020-07-18 06:35:08,745 INFO L280 TraceCheckUtils]: 2: Hoare triple {9640#true} ~n := #in~n; {9640#true} is VALID [2020-07-18 06:35:08,745 INFO L280 TraceCheckUtils]: 3: Hoare triple {9640#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {9640#true} is VALID [2020-07-18 06:35:08,745 INFO L280 TraceCheckUtils]: 4: Hoare triple {9640#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {9640#true} is VALID [2020-07-18 06:35:08,746 INFO L280 TraceCheckUtils]: 5: Hoare triple {9640#true} havoc #t~ret0.base, #t~ret0.offset; {9640#true} is VALID [2020-07-18 06:35:08,746 INFO L280 TraceCheckUtils]: 6: Hoare triple {9640#true} assume true; {9640#true} is VALID [2020-07-18 06:35:08,746 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {9640#true} {9641#false} #227#return; {9641#false} is VALID [2020-07-18 06:35:08,748 INFO L263 TraceCheckUtils]: 0: Hoare triple {9640#true} call ULTIMATE.init(); {9656#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:08,749 INFO L280 TraceCheckUtils]: 1: Hoare triple {9656#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {9640#true} is VALID [2020-07-18 06:35:08,749 INFO L280 TraceCheckUtils]: 2: Hoare triple {9640#true} #valid := #valid[0 := 0]; {9640#true} is VALID [2020-07-18 06:35:08,749 INFO L280 TraceCheckUtils]: 3: Hoare triple {9640#true} assume 0 < #StackHeapBarrier; {9640#true} is VALID [2020-07-18 06:35:08,749 INFO L280 TraceCheckUtils]: 4: Hoare triple {9640#true} assume true; {9640#true} is VALID [2020-07-18 06:35:08,749 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {9640#true} {9640#true} #231#return; {9640#true} is VALID [2020-07-18 06:35:08,750 INFO L263 TraceCheckUtils]: 6: Hoare triple {9640#true} call #t~ret23 := main(); {9640#true} is VALID [2020-07-18 06:35:08,750 INFO L280 TraceCheckUtils]: 7: Hoare triple {9640#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {9640#true} is VALID [2020-07-18 06:35:08,750 INFO L280 TraceCheckUtils]: 8: Hoare triple {9640#true} ~i~1 := 0; {9640#true} is VALID [2020-07-18 06:35:08,750 INFO L280 TraceCheckUtils]: 9: Hoare triple {9640#true} assume !!(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,751 INFO L280 TraceCheckUtils]: 10: Hoare triple {9640#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {9640#true} is VALID [2020-07-18 06:35:08,751 INFO L280 TraceCheckUtils]: 11: Hoare triple {9640#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {9640#true} is VALID [2020-07-18 06:35:08,751 INFO L280 TraceCheckUtils]: 12: Hoare triple {9640#true} havoc #t~nondet21; {9640#true} is VALID [2020-07-18 06:35:08,751 INFO L280 TraceCheckUtils]: 13: Hoare triple {9640#true} #t~post20 := ~i~1; {9640#true} is VALID [2020-07-18 06:35:08,752 INFO L280 TraceCheckUtils]: 14: Hoare triple {9640#true} ~i~1 := 1 + #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,752 INFO L280 TraceCheckUtils]: 15: Hoare triple {9640#true} havoc #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,752 INFO L280 TraceCheckUtils]: 16: Hoare triple {9640#true} assume !!(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,752 INFO L280 TraceCheckUtils]: 17: Hoare triple {9640#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {9640#true} is VALID [2020-07-18 06:35:08,752 INFO L280 TraceCheckUtils]: 18: Hoare triple {9640#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {9640#true} is VALID [2020-07-18 06:35:08,753 INFO L280 TraceCheckUtils]: 19: Hoare triple {9640#true} havoc #t~nondet21; {9640#true} is VALID [2020-07-18 06:35:08,753 INFO L280 TraceCheckUtils]: 20: Hoare triple {9640#true} #t~post20 := ~i~1; {9640#true} is VALID [2020-07-18 06:35:08,753 INFO L280 TraceCheckUtils]: 21: Hoare triple {9640#true} ~i~1 := 1 + #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,753 INFO L280 TraceCheckUtils]: 22: Hoare triple {9640#true} havoc #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,754 INFO L280 TraceCheckUtils]: 23: Hoare triple {9640#true} assume !!(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,754 INFO L280 TraceCheckUtils]: 24: Hoare triple {9640#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {9640#true} is VALID [2020-07-18 06:35:08,754 INFO L280 TraceCheckUtils]: 25: Hoare triple {9640#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {9640#true} is VALID [2020-07-18 06:35:08,754 INFO L280 TraceCheckUtils]: 26: Hoare triple {9640#true} havoc #t~nondet21; {9640#true} is VALID [2020-07-18 06:35:08,754 INFO L280 TraceCheckUtils]: 27: Hoare triple {9640#true} #t~post20 := ~i~1; {9640#true} is VALID [2020-07-18 06:35:08,755 INFO L280 TraceCheckUtils]: 28: Hoare triple {9640#true} ~i~1 := 1 + #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,755 INFO L280 TraceCheckUtils]: 29: Hoare triple {9640#true} havoc #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,755 INFO L280 TraceCheckUtils]: 30: Hoare triple {9640#true} assume !!(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,755 INFO L280 TraceCheckUtils]: 31: Hoare triple {9640#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {9640#true} is VALID [2020-07-18 06:35:08,756 INFO L280 TraceCheckUtils]: 32: Hoare triple {9640#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {9640#true} is VALID [2020-07-18 06:35:08,756 INFO L280 TraceCheckUtils]: 33: Hoare triple {9640#true} havoc #t~nondet21; {9640#true} is VALID [2020-07-18 06:35:08,756 INFO L280 TraceCheckUtils]: 34: Hoare triple {9640#true} #t~post20 := ~i~1; {9640#true} is VALID [2020-07-18 06:35:08,756 INFO L280 TraceCheckUtils]: 35: Hoare triple {9640#true} ~i~1 := 1 + #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,756 INFO L280 TraceCheckUtils]: 36: Hoare triple {9640#true} havoc #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,757 INFO L280 TraceCheckUtils]: 37: Hoare triple {9640#true} assume !!(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,757 INFO L280 TraceCheckUtils]: 38: Hoare triple {9640#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {9640#true} is VALID [2020-07-18 06:35:08,757 INFO L280 TraceCheckUtils]: 39: Hoare triple {9640#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {9640#true} is VALID [2020-07-18 06:35:08,757 INFO L280 TraceCheckUtils]: 40: Hoare triple {9640#true} havoc #t~nondet21; {9640#true} is VALID [2020-07-18 06:35:08,757 INFO L280 TraceCheckUtils]: 41: Hoare triple {9640#true} #t~post20 := ~i~1; {9640#true} is VALID [2020-07-18 06:35:08,758 INFO L280 TraceCheckUtils]: 42: Hoare triple {9640#true} ~i~1 := 1 + #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,758 INFO L280 TraceCheckUtils]: 43: Hoare triple {9640#true} havoc #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,758 INFO L280 TraceCheckUtils]: 44: Hoare triple {9640#true} assume !!(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,758 INFO L280 TraceCheckUtils]: 45: Hoare triple {9640#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {9640#true} is VALID [2020-07-18 06:35:08,758 INFO L280 TraceCheckUtils]: 46: Hoare triple {9640#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {9640#true} is VALID [2020-07-18 06:35:08,759 INFO L280 TraceCheckUtils]: 47: Hoare triple {9640#true} havoc #t~nondet21; {9640#true} is VALID [2020-07-18 06:35:08,759 INFO L280 TraceCheckUtils]: 48: Hoare triple {9640#true} #t~post20 := ~i~1; {9640#true} is VALID [2020-07-18 06:35:08,759 INFO L280 TraceCheckUtils]: 49: Hoare triple {9640#true} ~i~1 := 1 + #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,759 INFO L280 TraceCheckUtils]: 50: Hoare triple {9640#true} havoc #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,759 INFO L280 TraceCheckUtils]: 51: Hoare triple {9640#true} assume !!(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,759 INFO L280 TraceCheckUtils]: 52: Hoare triple {9640#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {9640#true} is VALID [2020-07-18 06:35:08,760 INFO L280 TraceCheckUtils]: 53: Hoare triple {9640#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {9640#true} is VALID [2020-07-18 06:35:08,760 INFO L280 TraceCheckUtils]: 54: Hoare triple {9640#true} havoc #t~nondet21; {9640#true} is VALID [2020-07-18 06:35:08,760 INFO L280 TraceCheckUtils]: 55: Hoare triple {9640#true} #t~post20 := ~i~1; {9640#true} is VALID [2020-07-18 06:35:08,760 INFO L280 TraceCheckUtils]: 56: Hoare triple {9640#true} ~i~1 := 1 + #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,760 INFO L280 TraceCheckUtils]: 57: Hoare triple {9640#true} havoc #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,761 INFO L280 TraceCheckUtils]: 58: Hoare triple {9640#true} assume !!(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,761 INFO L280 TraceCheckUtils]: 59: Hoare triple {9640#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {9640#true} is VALID [2020-07-18 06:35:08,761 INFO L280 TraceCheckUtils]: 60: Hoare triple {9640#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {9640#true} is VALID [2020-07-18 06:35:08,761 INFO L280 TraceCheckUtils]: 61: Hoare triple {9640#true} havoc #t~nondet21; {9640#true} is VALID [2020-07-18 06:35:08,761 INFO L280 TraceCheckUtils]: 62: Hoare triple {9640#true} #t~post20 := ~i~1; {9640#true} is VALID [2020-07-18 06:35:08,762 INFO L280 TraceCheckUtils]: 63: Hoare triple {9640#true} ~i~1 := 1 + #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,762 INFO L280 TraceCheckUtils]: 64: Hoare triple {9640#true} havoc #t~post20; {9640#true} is VALID [2020-07-18 06:35:08,762 INFO L280 TraceCheckUtils]: 65: Hoare triple {9640#true} assume !(~i~1 < 8); {9640#true} is VALID [2020-07-18 06:35:08,762 INFO L280 TraceCheckUtils]: 66: Hoare triple {9640#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {9640#true} is VALID [2020-07-18 06:35:08,763 INFO L263 TraceCheckUtils]: 67: Hoare triple {9640#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {9640#true} is VALID [2020-07-18 06:35:08,763 INFO L280 TraceCheckUtils]: 68: Hoare triple {9640#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {9640#true} is VALID [2020-07-18 06:35:08,763 INFO L280 TraceCheckUtils]: 69: Hoare triple {9640#true} ~start~0 := 0; {9640#true} is VALID [2020-07-18 06:35:08,763 INFO L280 TraceCheckUtils]: 70: Hoare triple {9640#true} ~i~0 := -1; {9640#true} is VALID [2020-07-18 06:35:08,763 INFO L280 TraceCheckUtils]: 71: Hoare triple {9640#true} ~j~0 := -1; {9640#true} is VALID [2020-07-18 06:35:08,764 INFO L280 TraceCheckUtils]: 72: Hoare triple {9640#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {9640#true} is VALID [2020-07-18 06:35:08,764 INFO L280 TraceCheckUtils]: 73: Hoare triple {9640#true} assume !(~str.base == 0 && ~str.offset == 0); {9640#true} is VALID [2020-07-18 06:35:08,764 INFO L280 TraceCheckUtils]: 74: Hoare triple {9640#true} #t~post2 := ~i~0; {9640#true} is VALID [2020-07-18 06:35:08,764 INFO L280 TraceCheckUtils]: 75: Hoare triple {9640#true} ~i~0 := 1 + #t~post2; {9640#true} is VALID [2020-07-18 06:35:08,765 INFO L280 TraceCheckUtils]: 76: Hoare triple {9640#true} havoc #t~post2; {9640#true} is VALID [2020-07-18 06:35:08,765 INFO L280 TraceCheckUtils]: 77: Hoare triple {9640#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {9640#true} is VALID [2020-07-18 06:35:08,765 INFO L280 TraceCheckUtils]: 78: Hoare triple {9640#true} #t~switch4 := 0 == #t~mem3; {9640#true} is VALID [2020-07-18 06:35:08,765 INFO L280 TraceCheckUtils]: 79: Hoare triple {9640#true} assume #t~switch4; {9640#true} is VALID [2020-07-18 06:35:08,765 INFO L280 TraceCheckUtils]: 80: Hoare triple {9640#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {9640#true} is VALID [2020-07-18 06:35:08,766 INFO L280 TraceCheckUtils]: 81: Hoare triple {9640#true} #t~short7 := 32 == #t~mem5; {9640#true} is VALID [2020-07-18 06:35:08,772 INFO L280 TraceCheckUtils]: 82: Hoare triple {9640#true} assume #t~short7; {9647#|parse_expression_list_#t~short7|} is VALID [2020-07-18 06:35:08,772 INFO L280 TraceCheckUtils]: 83: Hoare triple {9647#|parse_expression_list_#t~short7|} assume !#t~short7; {9641#false} is VALID [2020-07-18 06:35:08,773 INFO L280 TraceCheckUtils]: 84: Hoare triple {9641#false} havoc #t~short7; {9641#false} is VALID [2020-07-18 06:35:08,773 INFO L280 TraceCheckUtils]: 85: Hoare triple {9641#false} havoc #t~mem6; {9641#false} is VALID [2020-07-18 06:35:08,773 INFO L280 TraceCheckUtils]: 86: Hoare triple {9641#false} havoc #t~mem5; {9641#false} is VALID [2020-07-18 06:35:08,774 INFO L280 TraceCheckUtils]: 87: Hoare triple {9641#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {9641#false} is VALID [2020-07-18 06:35:08,774 INFO L280 TraceCheckUtils]: 88: Hoare triple {9641#false} assume !(34 == #t~mem9); {9641#false} is VALID [2020-07-18 06:35:08,774 INFO L280 TraceCheckUtils]: 89: Hoare triple {9641#false} havoc #t~mem9; {9641#false} is VALID [2020-07-18 06:35:08,774 INFO L280 TraceCheckUtils]: 90: Hoare triple {9641#false} ~j~0 := ~i~0 - 1; {9641#false} is VALID [2020-07-18 06:35:08,774 INFO L280 TraceCheckUtils]: 91: Hoare triple {9641#false} #t~short14 := 0 < ~j~0; {9641#false} is VALID [2020-07-18 06:35:08,775 INFO L280 TraceCheckUtils]: 92: Hoare triple {9641#false} assume !#t~short14; {9641#false} is VALID [2020-07-18 06:35:08,775 INFO L280 TraceCheckUtils]: 93: Hoare triple {9641#false} assume !#t~short14; {9641#false} is VALID [2020-07-18 06:35:08,775 INFO L280 TraceCheckUtils]: 94: Hoare triple {9641#false} havoc #t~short14; {9641#false} is VALID [2020-07-18 06:35:08,775 INFO L280 TraceCheckUtils]: 95: Hoare triple {9641#false} havoc #t~mem11; {9641#false} is VALID [2020-07-18 06:35:08,775 INFO L280 TraceCheckUtils]: 96: Hoare triple {9641#false} havoc #t~mem12; {9641#false} is VALID [2020-07-18 06:35:08,776 INFO L280 TraceCheckUtils]: 97: Hoare triple {9641#false} havoc #t~short13; {9641#false} is VALID [2020-07-18 06:35:08,776 INFO L280 TraceCheckUtils]: 98: Hoare triple {9641#false} #t~short17 := 0 < ~j~0; {9641#false} is VALID [2020-07-18 06:35:08,776 INFO L280 TraceCheckUtils]: 99: Hoare triple {9641#false} assume !#t~short17; {9641#false} is VALID [2020-07-18 06:35:08,776 INFO L280 TraceCheckUtils]: 100: Hoare triple {9641#false} assume !#t~short17; {9641#false} is VALID [2020-07-18 06:35:08,776 INFO L280 TraceCheckUtils]: 101: Hoare triple {9641#false} havoc #t~mem16; {9641#false} is VALID [2020-07-18 06:35:08,777 INFO L280 TraceCheckUtils]: 102: Hoare triple {9641#false} havoc #t~short17; {9641#false} is VALID [2020-07-18 06:35:08,777 INFO L280 TraceCheckUtils]: 103: Hoare triple {9641#false} assume ~start~0 <= ~j~0; {9641#false} is VALID [2020-07-18 06:35:08,777 INFO L280 TraceCheckUtils]: 104: Hoare triple {9641#false} assume !(1 + (~j~0 - ~start~0) >= 2); {9641#false} is VALID [2020-07-18 06:35:08,777 INFO L263 TraceCheckUtils]: 105: Hoare triple {9641#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {9640#true} is VALID [2020-07-18 06:35:08,777 INFO L280 TraceCheckUtils]: 106: Hoare triple {9640#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {9640#true} is VALID [2020-07-18 06:35:08,778 INFO L280 TraceCheckUtils]: 107: Hoare triple {9640#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {9640#true} is VALID [2020-07-18 06:35:08,778 INFO L280 TraceCheckUtils]: 108: Hoare triple {9640#true} ~n := #in~n; {9640#true} is VALID [2020-07-18 06:35:08,778 INFO L280 TraceCheckUtils]: 109: Hoare triple {9640#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {9640#true} is VALID [2020-07-18 06:35:08,778 INFO L280 TraceCheckUtils]: 110: Hoare triple {9640#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {9640#true} is VALID [2020-07-18 06:35:08,778 INFO L280 TraceCheckUtils]: 111: Hoare triple {9640#true} havoc #t~ret0.base, #t~ret0.offset; {9640#true} is VALID [2020-07-18 06:35:08,779 INFO L280 TraceCheckUtils]: 112: Hoare triple {9640#true} assume true; {9640#true} is VALID [2020-07-18 06:35:08,779 INFO L275 TraceCheckUtils]: 113: Hoare quadruple {9640#true} {9641#false} #227#return; {9641#false} is VALID [2020-07-18 06:35:08,779 INFO L280 TraceCheckUtils]: 114: Hoare triple {9641#false} havoc #t~ret19.base, #t~ret19.offset; {9641#false} is VALID [2020-07-18 06:35:08,779 INFO L263 TraceCheckUtils]: 115: Hoare triple {9641#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {9641#false} is VALID [2020-07-18 06:35:08,780 INFO L280 TraceCheckUtils]: 116: Hoare triple {9641#false} ~cond := #in~cond; {9641#false} is VALID [2020-07-18 06:35:08,780 INFO L280 TraceCheckUtils]: 117: Hoare triple {9641#false} assume 0 == ~cond; {9641#false} is VALID [2020-07-18 06:35:08,780 INFO L280 TraceCheckUtils]: 118: Hoare triple {9641#false} assume !false; {9641#false} is VALID [2020-07-18 06:35:08,788 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2020-07-18 06:35:08,789 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [2083194268] [2020-07-18 06:35:08,789 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:35:08,789 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-18 06:35:08,790 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [739140973] [2020-07-18 06:35:08,790 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 119 [2020-07-18 06:35:08,790 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:08,791 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-18 06:35:08,862 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:08,862 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-18 06:35:08,862 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:08,862 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-18 06:35:08,863 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:35:08,863 INFO L87 Difference]: Start difference. First operand 161 states and 171 transitions. Second operand 4 states. [2020-07-18 06:35:09,414 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:09,414 INFO L93 Difference]: Finished difference Result 249 states and 269 transitions. [2020-07-18 06:35:09,414 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-18 06:35:09,414 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 119 [2020-07-18 06:35:09,415 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:09,415 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:35:09,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 219 transitions. [2020-07-18 06:35:09,419 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:35:09,421 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 219 transitions. [2020-07-18 06:35:09,421 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 219 transitions. [2020-07-18 06:35:09,650 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 219 edges. 219 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:09,654 INFO L225 Difference]: With dead ends: 249 [2020-07-18 06:35:09,654 INFO L226 Difference]: Without dead ends: 162 [2020-07-18 06:35:09,655 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:35:09,656 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 162 states. [2020-07-18 06:35:09,797 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 162 to 162. [2020-07-18 06:35:09,797 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:09,797 INFO L82 GeneralOperation]: Start isEquivalent. First operand 162 states. Second operand 162 states. [2020-07-18 06:35:09,797 INFO L74 IsIncluded]: Start isIncluded. First operand 162 states. Second operand 162 states. [2020-07-18 06:35:09,797 INFO L87 Difference]: Start difference. First operand 162 states. Second operand 162 states. [2020-07-18 06:35:09,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:09,802 INFO L93 Difference]: Finished difference Result 162 states and 172 transitions. [2020-07-18 06:35:09,802 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 172 transitions. [2020-07-18 06:35:09,803 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:09,803 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:09,803 INFO L74 IsIncluded]: Start isIncluded. First operand 162 states. Second operand 162 states. [2020-07-18 06:35:09,803 INFO L87 Difference]: Start difference. First operand 162 states. Second operand 162 states. [2020-07-18 06:35:09,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:09,808 INFO L93 Difference]: Finished difference Result 162 states and 172 transitions. [2020-07-18 06:35:09,808 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 172 transitions. [2020-07-18 06:35:09,808 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:09,809 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:09,809 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:09,809 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:09,809 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 162 states. [2020-07-18 06:35:09,814 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 162 states to 162 states and 172 transitions. [2020-07-18 06:35:09,814 INFO L78 Accepts]: Start accepts. Automaton has 162 states and 172 transitions. Word has length 119 [2020-07-18 06:35:09,815 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:09,815 INFO L479 AbstractCegarLoop]: Abstraction has 162 states and 172 transitions. [2020-07-18 06:35:09,815 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-18 06:35:09,815 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 162 states and 172 transitions. [2020-07-18 06:35:09,987 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 172 edges. 172 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:09,988 INFO L276 IsEmpty]: Start isEmpty. Operand 162 states and 172 transitions. [2020-07-18 06:35:09,989 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 122 [2020-07-18 06:35:09,989 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:09,989 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 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, 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, 1, 1, 1, 1, 1] [2020-07-18 06:35:09,989 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-18 06:35:09,990 INFO L427 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:09,990 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:09,990 INFO L82 PathProgramCache]: Analyzing trace with hash 1395739916, now seen corresponding path program 1 times [2020-07-18 06:35:09,990 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:09,990 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [424387032] [2020-07-18 06:35:09,991 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:10,027 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:10,166 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:10,169 INFO L280 TraceCheckUtils]: 0: Hoare triple {10825#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {10805#true} is VALID [2020-07-18 06:35:10,169 INFO L280 TraceCheckUtils]: 1: Hoare triple {10805#true} #valid := #valid[0 := 0]; {10805#true} is VALID [2020-07-18 06:35:10,170 INFO L280 TraceCheckUtils]: 2: Hoare triple {10805#true} assume 0 < #StackHeapBarrier; {10805#true} is VALID [2020-07-18 06:35:10,170 INFO L280 TraceCheckUtils]: 3: Hoare triple {10805#true} assume true; {10805#true} is VALID [2020-07-18 06:35:10,170 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {10805#true} {10805#true} #231#return; {10805#true} is VALID [2020-07-18 06:35:10,171 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:10,174 INFO L280 TraceCheckUtils]: 0: Hoare triple {10805#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {10805#true} is VALID [2020-07-18 06:35:10,174 INFO L280 TraceCheckUtils]: 1: Hoare triple {10805#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {10805#true} is VALID [2020-07-18 06:35:10,175 INFO L280 TraceCheckUtils]: 2: Hoare triple {10805#true} ~n := #in~n; {10805#true} is VALID [2020-07-18 06:35:10,175 INFO L280 TraceCheckUtils]: 3: Hoare triple {10805#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {10805#true} is VALID [2020-07-18 06:35:10,175 INFO L280 TraceCheckUtils]: 4: Hoare triple {10805#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {10805#true} is VALID [2020-07-18 06:35:10,175 INFO L280 TraceCheckUtils]: 5: Hoare triple {10805#true} havoc #t~ret0.base, #t~ret0.offset; {10805#true} is VALID [2020-07-18 06:35:10,176 INFO L280 TraceCheckUtils]: 6: Hoare triple {10805#true} assume true; {10805#true} is VALID [2020-07-18 06:35:10,176 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {10805#true} {10806#false} #227#return; {10806#false} is VALID [2020-07-18 06:35:10,177 INFO L263 TraceCheckUtils]: 0: Hoare triple {10805#true} call ULTIMATE.init(); {10825#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:10,177 INFO L280 TraceCheckUtils]: 1: Hoare triple {10825#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {10805#true} is VALID [2020-07-18 06:35:10,177 INFO L280 TraceCheckUtils]: 2: Hoare triple {10805#true} #valid := #valid[0 := 0]; {10805#true} is VALID [2020-07-18 06:35:10,177 INFO L280 TraceCheckUtils]: 3: Hoare triple {10805#true} assume 0 < #StackHeapBarrier; {10805#true} is VALID [2020-07-18 06:35:10,178 INFO L280 TraceCheckUtils]: 4: Hoare triple {10805#true} assume true; {10805#true} is VALID [2020-07-18 06:35:10,178 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {10805#true} {10805#true} #231#return; {10805#true} is VALID [2020-07-18 06:35:10,178 INFO L263 TraceCheckUtils]: 6: Hoare triple {10805#true} call #t~ret23 := main(); {10805#true} is VALID [2020-07-18 06:35:10,178 INFO L280 TraceCheckUtils]: 7: Hoare triple {10805#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {10805#true} is VALID [2020-07-18 06:35:10,178 INFO L280 TraceCheckUtils]: 8: Hoare triple {10805#true} ~i~1 := 0; {10805#true} is VALID [2020-07-18 06:35:10,178 INFO L280 TraceCheckUtils]: 9: Hoare triple {10805#true} assume !!(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,179 INFO L280 TraceCheckUtils]: 10: Hoare triple {10805#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {10805#true} is VALID [2020-07-18 06:35:10,179 INFO L280 TraceCheckUtils]: 11: Hoare triple {10805#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {10805#true} is VALID [2020-07-18 06:35:10,179 INFO L280 TraceCheckUtils]: 12: Hoare triple {10805#true} havoc #t~nondet21; {10805#true} is VALID [2020-07-18 06:35:10,179 INFO L280 TraceCheckUtils]: 13: Hoare triple {10805#true} #t~post20 := ~i~1; {10805#true} is VALID [2020-07-18 06:35:10,179 INFO L280 TraceCheckUtils]: 14: Hoare triple {10805#true} ~i~1 := 1 + #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,179 INFO L280 TraceCheckUtils]: 15: Hoare triple {10805#true} havoc #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,180 INFO L280 TraceCheckUtils]: 16: Hoare triple {10805#true} assume !!(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,180 INFO L280 TraceCheckUtils]: 17: Hoare triple {10805#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {10805#true} is VALID [2020-07-18 06:35:10,180 INFO L280 TraceCheckUtils]: 18: Hoare triple {10805#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {10805#true} is VALID [2020-07-18 06:35:10,180 INFO L280 TraceCheckUtils]: 19: Hoare triple {10805#true} havoc #t~nondet21; {10805#true} is VALID [2020-07-18 06:35:10,180 INFO L280 TraceCheckUtils]: 20: Hoare triple {10805#true} #t~post20 := ~i~1; {10805#true} is VALID [2020-07-18 06:35:10,181 INFO L280 TraceCheckUtils]: 21: Hoare triple {10805#true} ~i~1 := 1 + #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,181 INFO L280 TraceCheckUtils]: 22: Hoare triple {10805#true} havoc #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,181 INFO L280 TraceCheckUtils]: 23: Hoare triple {10805#true} assume !!(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,181 INFO L280 TraceCheckUtils]: 24: Hoare triple {10805#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {10805#true} is VALID [2020-07-18 06:35:10,181 INFO L280 TraceCheckUtils]: 25: Hoare triple {10805#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {10805#true} is VALID [2020-07-18 06:35:10,181 INFO L280 TraceCheckUtils]: 26: Hoare triple {10805#true} havoc #t~nondet21; {10805#true} is VALID [2020-07-18 06:35:10,182 INFO L280 TraceCheckUtils]: 27: Hoare triple {10805#true} #t~post20 := ~i~1; {10805#true} is VALID [2020-07-18 06:35:10,182 INFO L280 TraceCheckUtils]: 28: Hoare triple {10805#true} ~i~1 := 1 + #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,182 INFO L280 TraceCheckUtils]: 29: Hoare triple {10805#true} havoc #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,182 INFO L280 TraceCheckUtils]: 30: Hoare triple {10805#true} assume !!(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,182 INFO L280 TraceCheckUtils]: 31: Hoare triple {10805#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {10805#true} is VALID [2020-07-18 06:35:10,182 INFO L280 TraceCheckUtils]: 32: Hoare triple {10805#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {10805#true} is VALID [2020-07-18 06:35:10,183 INFO L280 TraceCheckUtils]: 33: Hoare triple {10805#true} havoc #t~nondet21; {10805#true} is VALID [2020-07-18 06:35:10,183 INFO L280 TraceCheckUtils]: 34: Hoare triple {10805#true} #t~post20 := ~i~1; {10805#true} is VALID [2020-07-18 06:35:10,183 INFO L280 TraceCheckUtils]: 35: Hoare triple {10805#true} ~i~1 := 1 + #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,183 INFO L280 TraceCheckUtils]: 36: Hoare triple {10805#true} havoc #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,183 INFO L280 TraceCheckUtils]: 37: Hoare triple {10805#true} assume !!(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,184 INFO L280 TraceCheckUtils]: 38: Hoare triple {10805#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {10805#true} is VALID [2020-07-18 06:35:10,184 INFO L280 TraceCheckUtils]: 39: Hoare triple {10805#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {10805#true} is VALID [2020-07-18 06:35:10,184 INFO L280 TraceCheckUtils]: 40: Hoare triple {10805#true} havoc #t~nondet21; {10805#true} is VALID [2020-07-18 06:35:10,184 INFO L280 TraceCheckUtils]: 41: Hoare triple {10805#true} #t~post20 := ~i~1; {10805#true} is VALID [2020-07-18 06:35:10,184 INFO L280 TraceCheckUtils]: 42: Hoare triple {10805#true} ~i~1 := 1 + #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,184 INFO L280 TraceCheckUtils]: 43: Hoare triple {10805#true} havoc #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,185 INFO L280 TraceCheckUtils]: 44: Hoare triple {10805#true} assume !!(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,185 INFO L280 TraceCheckUtils]: 45: Hoare triple {10805#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {10805#true} is VALID [2020-07-18 06:35:10,185 INFO L280 TraceCheckUtils]: 46: Hoare triple {10805#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {10805#true} is VALID [2020-07-18 06:35:10,185 INFO L280 TraceCheckUtils]: 47: Hoare triple {10805#true} havoc #t~nondet21; {10805#true} is VALID [2020-07-18 06:35:10,185 INFO L280 TraceCheckUtils]: 48: Hoare triple {10805#true} #t~post20 := ~i~1; {10805#true} is VALID [2020-07-18 06:35:10,185 INFO L280 TraceCheckUtils]: 49: Hoare triple {10805#true} ~i~1 := 1 + #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,186 INFO L280 TraceCheckUtils]: 50: Hoare triple {10805#true} havoc #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,186 INFO L280 TraceCheckUtils]: 51: Hoare triple {10805#true} assume !!(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,186 INFO L280 TraceCheckUtils]: 52: Hoare triple {10805#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {10805#true} is VALID [2020-07-18 06:35:10,186 INFO L280 TraceCheckUtils]: 53: Hoare triple {10805#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {10805#true} is VALID [2020-07-18 06:35:10,186 INFO L280 TraceCheckUtils]: 54: Hoare triple {10805#true} havoc #t~nondet21; {10805#true} is VALID [2020-07-18 06:35:10,186 INFO L280 TraceCheckUtils]: 55: Hoare triple {10805#true} #t~post20 := ~i~1; {10805#true} is VALID [2020-07-18 06:35:10,187 INFO L280 TraceCheckUtils]: 56: Hoare triple {10805#true} ~i~1 := 1 + #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,187 INFO L280 TraceCheckUtils]: 57: Hoare triple {10805#true} havoc #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,187 INFO L280 TraceCheckUtils]: 58: Hoare triple {10805#true} assume !!(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,187 INFO L280 TraceCheckUtils]: 59: Hoare triple {10805#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {10805#true} is VALID [2020-07-18 06:35:10,187 INFO L280 TraceCheckUtils]: 60: Hoare triple {10805#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {10805#true} is VALID [2020-07-18 06:35:10,188 INFO L280 TraceCheckUtils]: 61: Hoare triple {10805#true} havoc #t~nondet21; {10805#true} is VALID [2020-07-18 06:35:10,188 INFO L280 TraceCheckUtils]: 62: Hoare triple {10805#true} #t~post20 := ~i~1; {10805#true} is VALID [2020-07-18 06:35:10,188 INFO L280 TraceCheckUtils]: 63: Hoare triple {10805#true} ~i~1 := 1 + #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,188 INFO L280 TraceCheckUtils]: 64: Hoare triple {10805#true} havoc #t~post20; {10805#true} is VALID [2020-07-18 06:35:10,188 INFO L280 TraceCheckUtils]: 65: Hoare triple {10805#true} assume !(~i~1 < 8); {10805#true} is VALID [2020-07-18 06:35:10,188 INFO L280 TraceCheckUtils]: 66: Hoare triple {10805#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {10805#true} is VALID [2020-07-18 06:35:10,189 INFO L263 TraceCheckUtils]: 67: Hoare triple {10805#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {10805#true} is VALID [2020-07-18 06:35:10,189 INFO L280 TraceCheckUtils]: 68: Hoare triple {10805#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {10805#true} is VALID [2020-07-18 06:35:10,190 INFO L280 TraceCheckUtils]: 69: Hoare triple {10805#true} ~start~0 := 0; {10812#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:10,191 INFO L280 TraceCheckUtils]: 70: Hoare triple {10812#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {10813#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:10,191 INFO L280 TraceCheckUtils]: 71: Hoare triple {10813#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} ~j~0 := -1; {10813#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:10,192 INFO L280 TraceCheckUtils]: 72: Hoare triple {10813#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {10813#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:10,193 INFO L280 TraceCheckUtils]: 73: Hoare triple {10813#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} assume !(~str.base == 0 && ~str.offset == 0); {10813#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:10,193 INFO L280 TraceCheckUtils]: 74: Hoare triple {10813#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} #t~post2 := ~i~0; {10814#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-18 06:35:10,194 INFO L280 TraceCheckUtils]: 75: Hoare triple {10814#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} ~i~0 := 1 + #t~post2; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,195 INFO L280 TraceCheckUtils]: 76: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~post2; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,196 INFO L280 TraceCheckUtils]: 77: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,197 INFO L280 TraceCheckUtils]: 78: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~switch4 := 0 == #t~mem3; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,197 INFO L280 TraceCheckUtils]: 79: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume #t~switch4; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,198 INFO L280 TraceCheckUtils]: 80: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,199 INFO L280 TraceCheckUtils]: 81: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 32 == #t~mem5; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,200 INFO L280 TraceCheckUtils]: 82: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,200 INFO L280 TraceCheckUtils]: 83: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-4 {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,201 INFO L280 TraceCheckUtils]: 84: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 9 == #t~mem6; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,202 INFO L280 TraceCheckUtils]: 85: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,203 INFO L280 TraceCheckUtils]: 86: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~short7; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,203 INFO L280 TraceCheckUtils]: 87: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem6; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,204 INFO L280 TraceCheckUtils]: 88: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem5; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,205 INFO L280 TraceCheckUtils]: 89: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,205 INFO L280 TraceCheckUtils]: 90: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !(34 == #t~mem9); {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,206 INFO L280 TraceCheckUtils]: 91: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem9; {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:10,207 INFO L280 TraceCheckUtils]: 92: Hoare triple {10815#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} ~j~0 := ~i~0 - 1; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,208 INFO L280 TraceCheckUtils]: 93: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short14 := 0 < ~j~0; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,209 INFO L280 TraceCheckUtils]: 94: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short14; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,209 INFO L280 TraceCheckUtils]: 95: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short14; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,210 INFO L280 TraceCheckUtils]: 96: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short14; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,211 INFO L280 TraceCheckUtils]: 97: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem11; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,211 INFO L280 TraceCheckUtils]: 98: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem12; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,212 INFO L280 TraceCheckUtils]: 99: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short13; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,213 INFO L280 TraceCheckUtils]: 100: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short17 := 0 < ~j~0; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,214 INFO L280 TraceCheckUtils]: 101: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short17; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,214 INFO L280 TraceCheckUtils]: 102: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short17; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,215 INFO L280 TraceCheckUtils]: 103: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem16; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,216 INFO L280 TraceCheckUtils]: 104: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short17; {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:10,217 INFO L280 TraceCheckUtils]: 105: Hoare triple {10816#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume ~start~0 <= ~j~0; {10806#false} is VALID [2020-07-18 06:35:10,217 INFO L280 TraceCheckUtils]: 106: Hoare triple {10806#false} assume !(1 + (~j~0 - ~start~0) >= 2); {10806#false} is VALID [2020-07-18 06:35:10,217 INFO L263 TraceCheckUtils]: 107: Hoare triple {10806#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {10805#true} is VALID [2020-07-18 06:35:10,217 INFO L280 TraceCheckUtils]: 108: Hoare triple {10805#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {10805#true} is VALID [2020-07-18 06:35:10,217 INFO L280 TraceCheckUtils]: 109: Hoare triple {10805#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {10805#true} is VALID [2020-07-18 06:35:10,218 INFO L280 TraceCheckUtils]: 110: Hoare triple {10805#true} ~n := #in~n; {10805#true} is VALID [2020-07-18 06:35:10,218 INFO L280 TraceCheckUtils]: 111: Hoare triple {10805#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {10805#true} is VALID [2020-07-18 06:35:10,218 INFO L280 TraceCheckUtils]: 112: Hoare triple {10805#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {10805#true} is VALID [2020-07-18 06:35:10,218 INFO L280 TraceCheckUtils]: 113: Hoare triple {10805#true} havoc #t~ret0.base, #t~ret0.offset; {10805#true} is VALID [2020-07-18 06:35:10,218 INFO L280 TraceCheckUtils]: 114: Hoare triple {10805#true} assume true; {10805#true} is VALID [2020-07-18 06:35:10,219 INFO L275 TraceCheckUtils]: 115: Hoare quadruple {10805#true} {10806#false} #227#return; {10806#false} is VALID [2020-07-18 06:35:10,219 INFO L280 TraceCheckUtils]: 116: Hoare triple {10806#false} havoc #t~ret19.base, #t~ret19.offset; {10806#false} is VALID [2020-07-18 06:35:10,219 INFO L263 TraceCheckUtils]: 117: Hoare triple {10806#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {10806#false} is VALID [2020-07-18 06:35:10,219 INFO L280 TraceCheckUtils]: 118: Hoare triple {10806#false} ~cond := #in~cond; {10806#false} is VALID [2020-07-18 06:35:10,219 INFO L280 TraceCheckUtils]: 119: Hoare triple {10806#false} assume 0 == ~cond; {10806#false} is VALID [2020-07-18 06:35:10,220 INFO L280 TraceCheckUtils]: 120: Hoare triple {10806#false} assume !false; {10806#false} is VALID [2020-07-18 06:35:10,238 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2020-07-18 06:35:10,239 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [424387032] [2020-07-18 06:35:10,239 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:35:10,239 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-18 06:35:10,239 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1896489664] [2020-07-18 06:35:10,240 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 121 [2020-07-18 06:35:10,240 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:10,240 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-18 06:35:10,321 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:10,321 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-18 06:35:10,321 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:10,322 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-18 06:35:10,322 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=38, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:35:10,322 INFO L87 Difference]: Start difference. First operand 162 states and 172 transitions. Second operand 8 states. [2020-07-18 06:35:12,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:12,231 INFO L93 Difference]: Finished difference Result 427 states and 473 transitions. [2020-07-18 06:35:12,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-18 06:35:12,231 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 121 [2020-07-18 06:35:12,232 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:12,232 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:35:12,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 419 transitions. [2020-07-18 06:35:12,244 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:35:12,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 419 transitions. [2020-07-18 06:35:12,250 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 419 transitions. [2020-07-18 06:35:12,694 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 419 edges. 419 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:12,705 INFO L225 Difference]: With dead ends: 427 [2020-07-18 06:35:12,705 INFO L226 Difference]: Without dead ends: 336 [2020-07-18 06:35:12,706 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=69, Invalid=141, Unknown=0, NotChecked=0, Total=210 [2020-07-18 06:35:12,707 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 336 states. [2020-07-18 06:35:12,934 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 336 to 199. [2020-07-18 06:35:12,934 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:12,934 INFO L82 GeneralOperation]: Start isEquivalent. First operand 336 states. Second operand 199 states. [2020-07-18 06:35:12,935 INFO L74 IsIncluded]: Start isIncluded. First operand 336 states. Second operand 199 states. [2020-07-18 06:35:12,935 INFO L87 Difference]: Start difference. First operand 336 states. Second operand 199 states. [2020-07-18 06:35:12,947 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:12,947 INFO L93 Difference]: Finished difference Result 336 states and 372 transitions. [2020-07-18 06:35:12,947 INFO L276 IsEmpty]: Start isEmpty. Operand 336 states and 372 transitions. [2020-07-18 06:35:12,948 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:12,949 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:12,949 INFO L74 IsIncluded]: Start isIncluded. First operand 199 states. Second operand 336 states. [2020-07-18 06:35:12,949 INFO L87 Difference]: Start difference. First operand 199 states. Second operand 336 states. [2020-07-18 06:35:12,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:12,964 INFO L93 Difference]: Finished difference Result 336 states and 372 transitions. [2020-07-18 06:35:12,964 INFO L276 IsEmpty]: Start isEmpty. Operand 336 states and 372 transitions. [2020-07-18 06:35:12,965 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:12,965 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:12,966 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:12,966 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:12,966 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 199 states. [2020-07-18 06:35:12,971 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 199 states to 199 states and 217 transitions. [2020-07-18 06:35:12,971 INFO L78 Accepts]: Start accepts. Automaton has 199 states and 217 transitions. Word has length 121 [2020-07-18 06:35:12,972 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:12,972 INFO L479 AbstractCegarLoop]: Abstraction has 199 states and 217 transitions. [2020-07-18 06:35:12,972 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-18 06:35:12,972 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 199 states and 217 transitions. [2020-07-18 06:35:13,274 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 217 edges. 217 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:13,275 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 217 transitions. [2020-07-18 06:35:13,277 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2020-07-18 06:35:13,277 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:13,278 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 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, 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, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:35:13,278 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2020-07-18 06:35:13,278 INFO L427 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:13,279 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:13,279 INFO L82 PathProgramCache]: Analyzing trace with hash 454539305, now seen corresponding path program 1 times [2020-07-18 06:35:13,279 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:13,280 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [2056470446] [2020-07-18 06:35:13,281 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:13,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:13,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:13,363 INFO L280 TraceCheckUtils]: 0: Hoare triple {12782#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {12766#true} is VALID [2020-07-18 06:35:13,364 INFO L280 TraceCheckUtils]: 1: Hoare triple {12766#true} #valid := #valid[0 := 0]; {12766#true} is VALID [2020-07-18 06:35:13,364 INFO L280 TraceCheckUtils]: 2: Hoare triple {12766#true} assume 0 < #StackHeapBarrier; {12766#true} is VALID [2020-07-18 06:35:13,364 INFO L280 TraceCheckUtils]: 3: Hoare triple {12766#true} assume true; {12766#true} is VALID [2020-07-18 06:35:13,365 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {12766#true} {12766#true} #231#return; {12766#true} is VALID [2020-07-18 06:35:13,366 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:13,371 INFO L280 TraceCheckUtils]: 0: Hoare triple {12766#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {12766#true} is VALID [2020-07-18 06:35:13,371 INFO L280 TraceCheckUtils]: 1: Hoare triple {12766#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {12766#true} is VALID [2020-07-18 06:35:13,371 INFO L280 TraceCheckUtils]: 2: Hoare triple {12766#true} ~n := #in~n; {12766#true} is VALID [2020-07-18 06:35:13,371 INFO L280 TraceCheckUtils]: 3: Hoare triple {12766#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {12766#true} is VALID [2020-07-18 06:35:13,372 INFO L280 TraceCheckUtils]: 4: Hoare triple {12766#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {12766#true} is VALID [2020-07-18 06:35:13,372 INFO L280 TraceCheckUtils]: 5: Hoare triple {12766#true} havoc #t~ret0.base, #t~ret0.offset; {12766#true} is VALID [2020-07-18 06:35:13,372 INFO L280 TraceCheckUtils]: 6: Hoare triple {12766#true} assume true; {12766#true} is VALID [2020-07-18 06:35:13,372 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {12766#true} {12767#false} #227#return; {12767#false} is VALID [2020-07-18 06:35:13,373 INFO L263 TraceCheckUtils]: 0: Hoare triple {12766#true} call ULTIMATE.init(); {12782#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:13,374 INFO L280 TraceCheckUtils]: 1: Hoare triple {12782#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {12766#true} is VALID [2020-07-18 06:35:13,374 INFO L280 TraceCheckUtils]: 2: Hoare triple {12766#true} #valid := #valid[0 := 0]; {12766#true} is VALID [2020-07-18 06:35:13,374 INFO L280 TraceCheckUtils]: 3: Hoare triple {12766#true} assume 0 < #StackHeapBarrier; {12766#true} is VALID [2020-07-18 06:35:13,374 INFO L280 TraceCheckUtils]: 4: Hoare triple {12766#true} assume true; {12766#true} is VALID [2020-07-18 06:35:13,374 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {12766#true} {12766#true} #231#return; {12766#true} is VALID [2020-07-18 06:35:13,375 INFO L263 TraceCheckUtils]: 6: Hoare triple {12766#true} call #t~ret23 := main(); {12766#true} is VALID [2020-07-18 06:35:13,375 INFO L280 TraceCheckUtils]: 7: Hoare triple {12766#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {12766#true} is VALID [2020-07-18 06:35:13,375 INFO L280 TraceCheckUtils]: 8: Hoare triple {12766#true} ~i~1 := 0; {12766#true} is VALID [2020-07-18 06:35:13,375 INFO L280 TraceCheckUtils]: 9: Hoare triple {12766#true} assume !!(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,375 INFO L280 TraceCheckUtils]: 10: Hoare triple {12766#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {12766#true} is VALID [2020-07-18 06:35:13,376 INFO L280 TraceCheckUtils]: 11: Hoare triple {12766#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {12766#true} is VALID [2020-07-18 06:35:13,376 INFO L280 TraceCheckUtils]: 12: Hoare triple {12766#true} havoc #t~nondet21; {12766#true} is VALID [2020-07-18 06:35:13,376 INFO L280 TraceCheckUtils]: 13: Hoare triple {12766#true} #t~post20 := ~i~1; {12766#true} is VALID [2020-07-18 06:35:13,376 INFO L280 TraceCheckUtils]: 14: Hoare triple {12766#true} ~i~1 := 1 + #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,376 INFO L280 TraceCheckUtils]: 15: Hoare triple {12766#true} havoc #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,376 INFO L280 TraceCheckUtils]: 16: Hoare triple {12766#true} assume !!(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,377 INFO L280 TraceCheckUtils]: 17: Hoare triple {12766#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {12766#true} is VALID [2020-07-18 06:35:13,377 INFO L280 TraceCheckUtils]: 18: Hoare triple {12766#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {12766#true} is VALID [2020-07-18 06:35:13,377 INFO L280 TraceCheckUtils]: 19: Hoare triple {12766#true} havoc #t~nondet21; {12766#true} is VALID [2020-07-18 06:35:13,377 INFO L280 TraceCheckUtils]: 20: Hoare triple {12766#true} #t~post20 := ~i~1; {12766#true} is VALID [2020-07-18 06:35:13,377 INFO L280 TraceCheckUtils]: 21: Hoare triple {12766#true} ~i~1 := 1 + #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,378 INFO L280 TraceCheckUtils]: 22: Hoare triple {12766#true} havoc #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,378 INFO L280 TraceCheckUtils]: 23: Hoare triple {12766#true} assume !!(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,378 INFO L280 TraceCheckUtils]: 24: Hoare triple {12766#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {12766#true} is VALID [2020-07-18 06:35:13,378 INFO L280 TraceCheckUtils]: 25: Hoare triple {12766#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {12766#true} is VALID [2020-07-18 06:35:13,378 INFO L280 TraceCheckUtils]: 26: Hoare triple {12766#true} havoc #t~nondet21; {12766#true} is VALID [2020-07-18 06:35:13,379 INFO L280 TraceCheckUtils]: 27: Hoare triple {12766#true} #t~post20 := ~i~1; {12766#true} is VALID [2020-07-18 06:35:13,379 INFO L280 TraceCheckUtils]: 28: Hoare triple {12766#true} ~i~1 := 1 + #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,379 INFO L280 TraceCheckUtils]: 29: Hoare triple {12766#true} havoc #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,379 INFO L280 TraceCheckUtils]: 30: Hoare triple {12766#true} assume !!(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,379 INFO L280 TraceCheckUtils]: 31: Hoare triple {12766#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {12766#true} is VALID [2020-07-18 06:35:13,380 INFO L280 TraceCheckUtils]: 32: Hoare triple {12766#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {12766#true} is VALID [2020-07-18 06:35:13,380 INFO L280 TraceCheckUtils]: 33: Hoare triple {12766#true} havoc #t~nondet21; {12766#true} is VALID [2020-07-18 06:35:13,380 INFO L280 TraceCheckUtils]: 34: Hoare triple {12766#true} #t~post20 := ~i~1; {12766#true} is VALID [2020-07-18 06:35:13,380 INFO L280 TraceCheckUtils]: 35: Hoare triple {12766#true} ~i~1 := 1 + #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,380 INFO L280 TraceCheckUtils]: 36: Hoare triple {12766#true} havoc #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,380 INFO L280 TraceCheckUtils]: 37: Hoare triple {12766#true} assume !!(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,381 INFO L280 TraceCheckUtils]: 38: Hoare triple {12766#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {12766#true} is VALID [2020-07-18 06:35:13,381 INFO L280 TraceCheckUtils]: 39: Hoare triple {12766#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {12766#true} is VALID [2020-07-18 06:35:13,381 INFO L280 TraceCheckUtils]: 40: Hoare triple {12766#true} havoc #t~nondet21; {12766#true} is VALID [2020-07-18 06:35:13,381 INFO L280 TraceCheckUtils]: 41: Hoare triple {12766#true} #t~post20 := ~i~1; {12766#true} is VALID [2020-07-18 06:35:13,381 INFO L280 TraceCheckUtils]: 42: Hoare triple {12766#true} ~i~1 := 1 + #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,381 INFO L280 TraceCheckUtils]: 43: Hoare triple {12766#true} havoc #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,382 INFO L280 TraceCheckUtils]: 44: Hoare triple {12766#true} assume !!(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,382 INFO L280 TraceCheckUtils]: 45: Hoare triple {12766#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {12766#true} is VALID [2020-07-18 06:35:13,382 INFO L280 TraceCheckUtils]: 46: Hoare triple {12766#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {12766#true} is VALID [2020-07-18 06:35:13,382 INFO L280 TraceCheckUtils]: 47: Hoare triple {12766#true} havoc #t~nondet21; {12766#true} is VALID [2020-07-18 06:35:13,383 INFO L280 TraceCheckUtils]: 48: Hoare triple {12766#true} #t~post20 := ~i~1; {12766#true} is VALID [2020-07-18 06:35:13,383 INFO L280 TraceCheckUtils]: 49: Hoare triple {12766#true} ~i~1 := 1 + #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,383 INFO L280 TraceCheckUtils]: 50: Hoare triple {12766#true} havoc #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,383 INFO L280 TraceCheckUtils]: 51: Hoare triple {12766#true} assume !!(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,383 INFO L280 TraceCheckUtils]: 52: Hoare triple {12766#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {12766#true} is VALID [2020-07-18 06:35:13,384 INFO L280 TraceCheckUtils]: 53: Hoare triple {12766#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {12766#true} is VALID [2020-07-18 06:35:13,384 INFO L280 TraceCheckUtils]: 54: Hoare triple {12766#true} havoc #t~nondet21; {12766#true} is VALID [2020-07-18 06:35:13,384 INFO L280 TraceCheckUtils]: 55: Hoare triple {12766#true} #t~post20 := ~i~1; {12766#true} is VALID [2020-07-18 06:35:13,384 INFO L280 TraceCheckUtils]: 56: Hoare triple {12766#true} ~i~1 := 1 + #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,384 INFO L280 TraceCheckUtils]: 57: Hoare triple {12766#true} havoc #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,384 INFO L280 TraceCheckUtils]: 58: Hoare triple {12766#true} assume !!(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,385 INFO L280 TraceCheckUtils]: 59: Hoare triple {12766#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {12766#true} is VALID [2020-07-18 06:35:13,385 INFO L280 TraceCheckUtils]: 60: Hoare triple {12766#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {12766#true} is VALID [2020-07-18 06:35:13,385 INFO L280 TraceCheckUtils]: 61: Hoare triple {12766#true} havoc #t~nondet21; {12766#true} is VALID [2020-07-18 06:35:13,385 INFO L280 TraceCheckUtils]: 62: Hoare triple {12766#true} #t~post20 := ~i~1; {12766#true} is VALID [2020-07-18 06:35:13,385 INFO L280 TraceCheckUtils]: 63: Hoare triple {12766#true} ~i~1 := 1 + #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,386 INFO L280 TraceCheckUtils]: 64: Hoare triple {12766#true} havoc #t~post20; {12766#true} is VALID [2020-07-18 06:35:13,386 INFO L280 TraceCheckUtils]: 65: Hoare triple {12766#true} assume !(~i~1 < 8); {12766#true} is VALID [2020-07-18 06:35:13,386 INFO L280 TraceCheckUtils]: 66: Hoare triple {12766#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {12766#true} is VALID [2020-07-18 06:35:13,386 INFO L263 TraceCheckUtils]: 67: Hoare triple {12766#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {12766#true} is VALID [2020-07-18 06:35:13,386 INFO L280 TraceCheckUtils]: 68: Hoare triple {12766#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {12766#true} is VALID [2020-07-18 06:35:13,387 INFO L280 TraceCheckUtils]: 69: Hoare triple {12766#true} ~start~0 := 0; {12766#true} is VALID [2020-07-18 06:35:13,387 INFO L280 TraceCheckUtils]: 70: Hoare triple {12766#true} ~i~0 := -1; {12766#true} is VALID [2020-07-18 06:35:13,387 INFO L280 TraceCheckUtils]: 71: Hoare triple {12766#true} ~j~0 := -1; {12766#true} is VALID [2020-07-18 06:35:13,387 INFO L280 TraceCheckUtils]: 72: Hoare triple {12766#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {12766#true} is VALID [2020-07-18 06:35:13,387 INFO L280 TraceCheckUtils]: 73: Hoare triple {12766#true} assume !(~str.base == 0 && ~str.offset == 0); {12766#true} is VALID [2020-07-18 06:35:13,387 INFO L280 TraceCheckUtils]: 74: Hoare triple {12766#true} #t~post2 := ~i~0; {12766#true} is VALID [2020-07-18 06:35:13,388 INFO L280 TraceCheckUtils]: 75: Hoare triple {12766#true} ~i~0 := 1 + #t~post2; {12766#true} is VALID [2020-07-18 06:35:13,388 INFO L280 TraceCheckUtils]: 76: Hoare triple {12766#true} havoc #t~post2; {12766#true} is VALID [2020-07-18 06:35:13,388 INFO L280 TraceCheckUtils]: 77: Hoare triple {12766#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {12766#true} is VALID [2020-07-18 06:35:13,388 INFO L280 TraceCheckUtils]: 78: Hoare triple {12766#true} #t~switch4 := 0 == #t~mem3; {12766#true} is VALID [2020-07-18 06:35:13,389 INFO L280 TraceCheckUtils]: 79: Hoare triple {12766#true} assume #t~switch4; {12766#true} is VALID [2020-07-18 06:35:13,389 INFO L280 TraceCheckUtils]: 80: Hoare triple {12766#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {12766#true} is VALID [2020-07-18 06:35:13,389 INFO L280 TraceCheckUtils]: 81: Hoare triple {12766#true} #t~short7 := 32 == #t~mem5; {12766#true} is VALID [2020-07-18 06:35:13,389 INFO L280 TraceCheckUtils]: 82: Hoare triple {12766#true} assume !#t~short7; {12766#true} is VALID [2020-07-18 06:35:13,389 INFO L280 TraceCheckUtils]: 83: Hoare triple {12766#true} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-4 {12766#true} is VALID [2020-07-18 06:35:13,390 INFO L280 TraceCheckUtils]: 84: Hoare triple {12766#true} #t~short7 := 9 == #t~mem6; {12766#true} is VALID [2020-07-18 06:35:13,390 INFO L280 TraceCheckUtils]: 85: Hoare triple {12766#true} assume !#t~short7; {12766#true} is VALID [2020-07-18 06:35:13,390 INFO L280 TraceCheckUtils]: 86: Hoare triple {12766#true} havoc #t~short7; {12766#true} is VALID [2020-07-18 06:35:13,390 INFO L280 TraceCheckUtils]: 87: Hoare triple {12766#true} havoc #t~mem6; {12766#true} is VALID [2020-07-18 06:35:13,390 INFO L280 TraceCheckUtils]: 88: Hoare triple {12766#true} havoc #t~mem5; {12766#true} is VALID [2020-07-18 06:35:13,390 INFO L280 TraceCheckUtils]: 89: Hoare triple {12766#true} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {12766#true} is VALID [2020-07-18 06:35:13,391 INFO L280 TraceCheckUtils]: 90: Hoare triple {12766#true} assume !(34 == #t~mem9); {12766#true} is VALID [2020-07-18 06:35:13,391 INFO L280 TraceCheckUtils]: 91: Hoare triple {12766#true} havoc #t~mem9; {12766#true} is VALID [2020-07-18 06:35:13,391 INFO L280 TraceCheckUtils]: 92: Hoare triple {12766#true} ~j~0 := ~i~0 - 1; {12766#true} is VALID [2020-07-18 06:35:13,391 INFO L280 TraceCheckUtils]: 93: Hoare triple {12766#true} #t~short14 := 0 < ~j~0; {12766#true} is VALID [2020-07-18 06:35:13,391 INFO L280 TraceCheckUtils]: 94: Hoare triple {12766#true} assume !#t~short14; {12766#true} is VALID [2020-07-18 06:35:13,392 INFO L280 TraceCheckUtils]: 95: Hoare triple {12766#true} assume !#t~short14; {12766#true} is VALID [2020-07-18 06:35:13,392 INFO L280 TraceCheckUtils]: 96: Hoare triple {12766#true} havoc #t~short14; {12766#true} is VALID [2020-07-18 06:35:13,392 INFO L280 TraceCheckUtils]: 97: Hoare triple {12766#true} havoc #t~mem11; {12766#true} is VALID [2020-07-18 06:35:13,392 INFO L280 TraceCheckUtils]: 98: Hoare triple {12766#true} havoc #t~mem12; {12766#true} is VALID [2020-07-18 06:35:13,392 INFO L280 TraceCheckUtils]: 99: Hoare triple {12766#true} havoc #t~short13; {12766#true} is VALID [2020-07-18 06:35:13,393 INFO L280 TraceCheckUtils]: 100: Hoare triple {12766#true} #t~short17 := 0 < ~j~0; {12766#true} is VALID [2020-07-18 06:35:13,393 INFO L280 TraceCheckUtils]: 101: Hoare triple {12766#true} assume !#t~short17; {12773#(not |parse_expression_list_#t~short17|)} is VALID [2020-07-18 06:35:13,394 INFO L280 TraceCheckUtils]: 102: Hoare triple {12773#(not |parse_expression_list_#t~short17|)} assume #t~short17; {12767#false} is VALID [2020-07-18 06:35:13,394 INFO L280 TraceCheckUtils]: 103: Hoare triple {12767#false} havoc #t~mem16; {12767#false} is VALID [2020-07-18 06:35:13,394 INFO L280 TraceCheckUtils]: 104: Hoare triple {12767#false} havoc #t~short17; {12767#false} is VALID [2020-07-18 06:35:13,394 INFO L280 TraceCheckUtils]: 105: Hoare triple {12767#false} #t~post18 := ~j~0; {12767#false} is VALID [2020-07-18 06:35:13,395 INFO L280 TraceCheckUtils]: 106: Hoare triple {12767#false} ~j~0 := #t~post18 - 1; {12767#false} is VALID [2020-07-18 06:35:13,395 INFO L280 TraceCheckUtils]: 107: Hoare triple {12767#false} havoc #t~post18; {12767#false} is VALID [2020-07-18 06:35:13,395 INFO L280 TraceCheckUtils]: 108: Hoare triple {12767#false} assume ~start~0 <= ~j~0; {12767#false} is VALID [2020-07-18 06:35:13,395 INFO L280 TraceCheckUtils]: 109: Hoare triple {12767#false} assume !(1 + (~j~0 - ~start~0) >= 2); {12767#false} is VALID [2020-07-18 06:35:13,395 INFO L263 TraceCheckUtils]: 110: Hoare triple {12767#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {12766#true} is VALID [2020-07-18 06:35:13,396 INFO L280 TraceCheckUtils]: 111: Hoare triple {12766#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {12766#true} is VALID [2020-07-18 06:35:13,396 INFO L280 TraceCheckUtils]: 112: Hoare triple {12766#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {12766#true} is VALID [2020-07-18 06:35:13,396 INFO L280 TraceCheckUtils]: 113: Hoare triple {12766#true} ~n := #in~n; {12766#true} is VALID [2020-07-18 06:35:13,396 INFO L280 TraceCheckUtils]: 114: Hoare triple {12766#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {12766#true} is VALID [2020-07-18 06:35:13,396 INFO L280 TraceCheckUtils]: 115: Hoare triple {12766#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {12766#true} is VALID [2020-07-18 06:35:13,397 INFO L280 TraceCheckUtils]: 116: Hoare triple {12766#true} havoc #t~ret0.base, #t~ret0.offset; {12766#true} is VALID [2020-07-18 06:35:13,397 INFO L280 TraceCheckUtils]: 117: Hoare triple {12766#true} assume true; {12766#true} is VALID [2020-07-18 06:35:13,397 INFO L275 TraceCheckUtils]: 118: Hoare quadruple {12766#true} {12767#false} #227#return; {12767#false} is VALID [2020-07-18 06:35:13,397 INFO L280 TraceCheckUtils]: 119: Hoare triple {12767#false} havoc #t~ret19.base, #t~ret19.offset; {12767#false} is VALID [2020-07-18 06:35:13,397 INFO L263 TraceCheckUtils]: 120: Hoare triple {12767#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {12767#false} is VALID [2020-07-18 06:35:13,398 INFO L280 TraceCheckUtils]: 121: Hoare triple {12767#false} ~cond := #in~cond; {12767#false} is VALID [2020-07-18 06:35:13,398 INFO L280 TraceCheckUtils]: 122: Hoare triple {12767#false} assume 0 == ~cond; {12767#false} is VALID [2020-07-18 06:35:13,398 INFO L280 TraceCheckUtils]: 123: Hoare triple {12767#false} assume !false; {12767#false} is VALID [2020-07-18 06:35:13,406 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2020-07-18 06:35:13,407 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [2056470446] [2020-07-18 06:35:13,407 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:35:13,407 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-18 06:35:13,407 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [860851347] [2020-07-18 06:35:13,408 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 124 [2020-07-18 06:35:13,408 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:13,408 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-18 06:35:13,483 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:13,483 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-18 06:35:13,484 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:13,484 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-18 06:35:13,484 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:35:13,484 INFO L87 Difference]: Start difference. First operand 199 states and 217 transitions. Second operand 4 states. [2020-07-18 06:35:14,218 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:14,218 INFO L93 Difference]: Finished difference Result 289 states and 317 transitions. [2020-07-18 06:35:14,219 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-18 06:35:14,219 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 124 [2020-07-18 06:35:14,219 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:14,219 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:35:14,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 219 transitions. [2020-07-18 06:35:14,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:35:14,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 219 transitions. [2020-07-18 06:35:14,226 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 219 transitions. [2020-07-18 06:35:14,471 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 219 edges. 219 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:14,475 INFO L225 Difference]: With dead ends: 289 [2020-07-18 06:35:14,476 INFO L226 Difference]: Without dead ends: 200 [2020-07-18 06:35:14,477 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:35:14,477 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 200 states. [2020-07-18 06:35:14,698 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 200 to 200. [2020-07-18 06:35:14,698 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:14,699 INFO L82 GeneralOperation]: Start isEquivalent. First operand 200 states. Second operand 200 states. [2020-07-18 06:35:14,699 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand 200 states. [2020-07-18 06:35:14,699 INFO L87 Difference]: Start difference. First operand 200 states. Second operand 200 states. [2020-07-18 06:35:14,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:14,706 INFO L93 Difference]: Finished difference Result 200 states and 217 transitions. [2020-07-18 06:35:14,706 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 217 transitions. [2020-07-18 06:35:14,707 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:14,707 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:14,707 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand 200 states. [2020-07-18 06:35:14,707 INFO L87 Difference]: Start difference. First operand 200 states. Second operand 200 states. [2020-07-18 06:35:14,713 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:14,714 INFO L93 Difference]: Finished difference Result 200 states and 217 transitions. [2020-07-18 06:35:14,714 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 217 transitions. [2020-07-18 06:35:14,714 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:14,715 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:14,715 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:14,715 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:14,715 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 200 states. [2020-07-18 06:35:14,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 200 states to 200 states and 217 transitions. [2020-07-18 06:35:14,721 INFO L78 Accepts]: Start accepts. Automaton has 200 states and 217 transitions. Word has length 124 [2020-07-18 06:35:14,721 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:14,721 INFO L479 AbstractCegarLoop]: Abstraction has 200 states and 217 transitions. [2020-07-18 06:35:14,721 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-18 06:35:14,721 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 200 states and 217 transitions. [2020-07-18 06:35:14,958 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 217 edges. 217 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:14,958 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 217 transitions. [2020-07-18 06:35:14,959 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 125 [2020-07-18 06:35:14,960 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:14,960 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 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, 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, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:35:14,960 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2020-07-18 06:35:14,960 INFO L427 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:14,960 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:14,961 INFO L82 PathProgramCache]: Analyzing trace with hash 1684557317, now seen corresponding path program 1 times [2020-07-18 06:35:14,961 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:14,961 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1869040113] [2020-07-18 06:35:14,962 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:14,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:15,134 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:15,137 INFO L280 TraceCheckUtils]: 0: Hoare triple {14185#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {14163#true} is VALID [2020-07-18 06:35:15,138 INFO L280 TraceCheckUtils]: 1: Hoare triple {14163#true} #valid := #valid[0 := 0]; {14163#true} is VALID [2020-07-18 06:35:15,138 INFO L280 TraceCheckUtils]: 2: Hoare triple {14163#true} assume 0 < #StackHeapBarrier; {14163#true} is VALID [2020-07-18 06:35:15,138 INFO L280 TraceCheckUtils]: 3: Hoare triple {14163#true} assume true; {14163#true} is VALID [2020-07-18 06:35:15,138 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {14163#true} {14163#true} #231#return; {14163#true} is VALID [2020-07-18 06:35:15,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:15,142 INFO L280 TraceCheckUtils]: 0: Hoare triple {14163#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {14163#true} is VALID [2020-07-18 06:35:15,143 INFO L280 TraceCheckUtils]: 1: Hoare triple {14163#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {14163#true} is VALID [2020-07-18 06:35:15,143 INFO L280 TraceCheckUtils]: 2: Hoare triple {14163#true} ~n := #in~n; {14163#true} is VALID [2020-07-18 06:35:15,143 INFO L280 TraceCheckUtils]: 3: Hoare triple {14163#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {14163#true} is VALID [2020-07-18 06:35:15,143 INFO L280 TraceCheckUtils]: 4: Hoare triple {14163#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {14163#true} is VALID [2020-07-18 06:35:15,143 INFO L280 TraceCheckUtils]: 5: Hoare triple {14163#true} havoc #t~ret0.base, #t~ret0.offset; {14163#true} is VALID [2020-07-18 06:35:15,144 INFO L280 TraceCheckUtils]: 6: Hoare triple {14163#true} assume true; {14163#true} is VALID [2020-07-18 06:35:15,144 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {14163#true} {14164#false} #227#return; {14164#false} is VALID [2020-07-18 06:35:15,145 INFO L263 TraceCheckUtils]: 0: Hoare triple {14163#true} call ULTIMATE.init(); {14185#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:15,145 INFO L280 TraceCheckUtils]: 1: Hoare triple {14185#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {14163#true} is VALID [2020-07-18 06:35:15,145 INFO L280 TraceCheckUtils]: 2: Hoare triple {14163#true} #valid := #valid[0 := 0]; {14163#true} is VALID [2020-07-18 06:35:15,146 INFO L280 TraceCheckUtils]: 3: Hoare triple {14163#true} assume 0 < #StackHeapBarrier; {14163#true} is VALID [2020-07-18 06:35:15,146 INFO L280 TraceCheckUtils]: 4: Hoare triple {14163#true} assume true; {14163#true} is VALID [2020-07-18 06:35:15,146 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {14163#true} {14163#true} #231#return; {14163#true} is VALID [2020-07-18 06:35:15,146 INFO L263 TraceCheckUtils]: 6: Hoare triple {14163#true} call #t~ret23 := main(); {14163#true} is VALID [2020-07-18 06:35:15,146 INFO L280 TraceCheckUtils]: 7: Hoare triple {14163#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {14163#true} is VALID [2020-07-18 06:35:15,147 INFO L280 TraceCheckUtils]: 8: Hoare triple {14163#true} ~i~1 := 0; {14163#true} is VALID [2020-07-18 06:35:15,147 INFO L280 TraceCheckUtils]: 9: Hoare triple {14163#true} assume !!(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,147 INFO L280 TraceCheckUtils]: 10: Hoare triple {14163#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {14163#true} is VALID [2020-07-18 06:35:15,147 INFO L280 TraceCheckUtils]: 11: Hoare triple {14163#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {14163#true} is VALID [2020-07-18 06:35:15,147 INFO L280 TraceCheckUtils]: 12: Hoare triple {14163#true} havoc #t~nondet21; {14163#true} is VALID [2020-07-18 06:35:15,148 INFO L280 TraceCheckUtils]: 13: Hoare triple {14163#true} #t~post20 := ~i~1; {14163#true} is VALID [2020-07-18 06:35:15,148 INFO L280 TraceCheckUtils]: 14: Hoare triple {14163#true} ~i~1 := 1 + #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,148 INFO L280 TraceCheckUtils]: 15: Hoare triple {14163#true} havoc #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,148 INFO L280 TraceCheckUtils]: 16: Hoare triple {14163#true} assume !!(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,148 INFO L280 TraceCheckUtils]: 17: Hoare triple {14163#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {14163#true} is VALID [2020-07-18 06:35:15,149 INFO L280 TraceCheckUtils]: 18: Hoare triple {14163#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {14163#true} is VALID [2020-07-18 06:35:15,149 INFO L280 TraceCheckUtils]: 19: Hoare triple {14163#true} havoc #t~nondet21; {14163#true} is VALID [2020-07-18 06:35:15,149 INFO L280 TraceCheckUtils]: 20: Hoare triple {14163#true} #t~post20 := ~i~1; {14163#true} is VALID [2020-07-18 06:35:15,149 INFO L280 TraceCheckUtils]: 21: Hoare triple {14163#true} ~i~1 := 1 + #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,149 INFO L280 TraceCheckUtils]: 22: Hoare triple {14163#true} havoc #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,149 INFO L280 TraceCheckUtils]: 23: Hoare triple {14163#true} assume !!(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,150 INFO L280 TraceCheckUtils]: 24: Hoare triple {14163#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {14163#true} is VALID [2020-07-18 06:35:15,150 INFO L280 TraceCheckUtils]: 25: Hoare triple {14163#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {14163#true} is VALID [2020-07-18 06:35:15,150 INFO L280 TraceCheckUtils]: 26: Hoare triple {14163#true} havoc #t~nondet21; {14163#true} is VALID [2020-07-18 06:35:15,150 INFO L280 TraceCheckUtils]: 27: Hoare triple {14163#true} #t~post20 := ~i~1; {14163#true} is VALID [2020-07-18 06:35:15,150 INFO L280 TraceCheckUtils]: 28: Hoare triple {14163#true} ~i~1 := 1 + #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,151 INFO L280 TraceCheckUtils]: 29: Hoare triple {14163#true} havoc #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,151 INFO L280 TraceCheckUtils]: 30: Hoare triple {14163#true} assume !!(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,151 INFO L280 TraceCheckUtils]: 31: Hoare triple {14163#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {14163#true} is VALID [2020-07-18 06:35:15,151 INFO L280 TraceCheckUtils]: 32: Hoare triple {14163#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {14163#true} is VALID [2020-07-18 06:35:15,151 INFO L280 TraceCheckUtils]: 33: Hoare triple {14163#true} havoc #t~nondet21; {14163#true} is VALID [2020-07-18 06:35:15,152 INFO L280 TraceCheckUtils]: 34: Hoare triple {14163#true} #t~post20 := ~i~1; {14163#true} is VALID [2020-07-18 06:35:15,152 INFO L280 TraceCheckUtils]: 35: Hoare triple {14163#true} ~i~1 := 1 + #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,152 INFO L280 TraceCheckUtils]: 36: Hoare triple {14163#true} havoc #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,152 INFO L280 TraceCheckUtils]: 37: Hoare triple {14163#true} assume !!(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,152 INFO L280 TraceCheckUtils]: 38: Hoare triple {14163#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {14163#true} is VALID [2020-07-18 06:35:15,152 INFO L280 TraceCheckUtils]: 39: Hoare triple {14163#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {14163#true} is VALID [2020-07-18 06:35:15,153 INFO L280 TraceCheckUtils]: 40: Hoare triple {14163#true} havoc #t~nondet21; {14163#true} is VALID [2020-07-18 06:35:15,153 INFO L280 TraceCheckUtils]: 41: Hoare triple {14163#true} #t~post20 := ~i~1; {14163#true} is VALID [2020-07-18 06:35:15,153 INFO L280 TraceCheckUtils]: 42: Hoare triple {14163#true} ~i~1 := 1 + #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,153 INFO L280 TraceCheckUtils]: 43: Hoare triple {14163#true} havoc #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,153 INFO L280 TraceCheckUtils]: 44: Hoare triple {14163#true} assume !!(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,153 INFO L280 TraceCheckUtils]: 45: Hoare triple {14163#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {14163#true} is VALID [2020-07-18 06:35:15,154 INFO L280 TraceCheckUtils]: 46: Hoare triple {14163#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {14163#true} is VALID [2020-07-18 06:35:15,154 INFO L280 TraceCheckUtils]: 47: Hoare triple {14163#true} havoc #t~nondet21; {14163#true} is VALID [2020-07-18 06:35:15,154 INFO L280 TraceCheckUtils]: 48: Hoare triple {14163#true} #t~post20 := ~i~1; {14163#true} is VALID [2020-07-18 06:35:15,154 INFO L280 TraceCheckUtils]: 49: Hoare triple {14163#true} ~i~1 := 1 + #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,154 INFO L280 TraceCheckUtils]: 50: Hoare triple {14163#true} havoc #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,155 INFO L280 TraceCheckUtils]: 51: Hoare triple {14163#true} assume !!(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,155 INFO L280 TraceCheckUtils]: 52: Hoare triple {14163#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {14163#true} is VALID [2020-07-18 06:35:15,155 INFO L280 TraceCheckUtils]: 53: Hoare triple {14163#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {14163#true} is VALID [2020-07-18 06:35:15,155 INFO L280 TraceCheckUtils]: 54: Hoare triple {14163#true} havoc #t~nondet21; {14163#true} is VALID [2020-07-18 06:35:15,155 INFO L280 TraceCheckUtils]: 55: Hoare triple {14163#true} #t~post20 := ~i~1; {14163#true} is VALID [2020-07-18 06:35:15,155 INFO L280 TraceCheckUtils]: 56: Hoare triple {14163#true} ~i~1 := 1 + #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,156 INFO L280 TraceCheckUtils]: 57: Hoare triple {14163#true} havoc #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,156 INFO L280 TraceCheckUtils]: 58: Hoare triple {14163#true} assume !!(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,156 INFO L280 TraceCheckUtils]: 59: Hoare triple {14163#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {14163#true} is VALID [2020-07-18 06:35:15,156 INFO L280 TraceCheckUtils]: 60: Hoare triple {14163#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {14163#true} is VALID [2020-07-18 06:35:15,156 INFO L280 TraceCheckUtils]: 61: Hoare triple {14163#true} havoc #t~nondet21; {14163#true} is VALID [2020-07-18 06:35:15,157 INFO L280 TraceCheckUtils]: 62: Hoare triple {14163#true} #t~post20 := ~i~1; {14163#true} is VALID [2020-07-18 06:35:15,157 INFO L280 TraceCheckUtils]: 63: Hoare triple {14163#true} ~i~1 := 1 + #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,157 INFO L280 TraceCheckUtils]: 64: Hoare triple {14163#true} havoc #t~post20; {14163#true} is VALID [2020-07-18 06:35:15,157 INFO L280 TraceCheckUtils]: 65: Hoare triple {14163#true} assume !(~i~1 < 8); {14163#true} is VALID [2020-07-18 06:35:15,158 INFO L280 TraceCheckUtils]: 66: Hoare triple {14163#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {14163#true} is VALID [2020-07-18 06:35:15,158 INFO L263 TraceCheckUtils]: 67: Hoare triple {14163#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {14163#true} is VALID [2020-07-18 06:35:15,158 INFO L280 TraceCheckUtils]: 68: Hoare triple {14163#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {14163#true} is VALID [2020-07-18 06:35:15,159 INFO L280 TraceCheckUtils]: 69: Hoare triple {14163#true} ~start~0 := 0; {14170#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,159 INFO L280 TraceCheckUtils]: 70: Hoare triple {14170#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {14171#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:15,160 INFO L280 TraceCheckUtils]: 71: Hoare triple {14171#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} ~j~0 := -1; {14171#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:15,161 INFO L280 TraceCheckUtils]: 72: Hoare triple {14171#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {14171#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:15,162 INFO L280 TraceCheckUtils]: 73: Hoare triple {14171#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} assume !(~str.base == 0 && ~str.offset == 0); {14171#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:15,163 INFO L280 TraceCheckUtils]: 74: Hoare triple {14171#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} #t~post2 := ~i~0; {14172#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-18 06:35:15,164 INFO L280 TraceCheckUtils]: 75: Hoare triple {14172#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} ~i~0 := 1 + #t~post2; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,165 INFO L280 TraceCheckUtils]: 76: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~post2; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,165 INFO L280 TraceCheckUtils]: 77: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,166 INFO L280 TraceCheckUtils]: 78: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~switch4 := 0 == #t~mem3; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,167 INFO L280 TraceCheckUtils]: 79: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume #t~switch4; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,168 INFO L280 TraceCheckUtils]: 80: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,169 INFO L280 TraceCheckUtils]: 81: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 32 == #t~mem5; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,170 INFO L280 TraceCheckUtils]: 82: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,171 INFO L280 TraceCheckUtils]: 83: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-4 {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,172 INFO L280 TraceCheckUtils]: 84: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 9 == #t~mem6; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,173 INFO L280 TraceCheckUtils]: 85: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,174 INFO L280 TraceCheckUtils]: 86: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~short7; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,174 INFO L280 TraceCheckUtils]: 87: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem6; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,175 INFO L280 TraceCheckUtils]: 88: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem5; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,176 INFO L280 TraceCheckUtils]: 89: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,177 INFO L280 TraceCheckUtils]: 90: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume 34 == #t~mem9; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,178 INFO L280 TraceCheckUtils]: 91: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem9; {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,178 INFO L280 TraceCheckUtils]: 92: Hoare triple {14173#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~post10 := ~start~0; {14174#(and (= 0 |parse_expression_list_#t~post10|) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:15,179 INFO L280 TraceCheckUtils]: 93: Hoare triple {14174#(and (= 0 |parse_expression_list_#t~post10|) (<= parse_expression_list_~i~0 0))} ~start~0 := 1 + #t~post10; {14175#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,180 INFO L280 TraceCheckUtils]: 94: Hoare triple {14175#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} havoc #t~post10; {14175#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,181 INFO L280 TraceCheckUtils]: 95: Hoare triple {14175#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,182 INFO L280 TraceCheckUtils]: 96: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,183 INFO L280 TraceCheckUtils]: 97: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,183 INFO L280 TraceCheckUtils]: 98: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,184 INFO L280 TraceCheckUtils]: 99: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short14; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,185 INFO L280 TraceCheckUtils]: 100: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem11; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,185 INFO L280 TraceCheckUtils]: 101: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem12; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,186 INFO L280 TraceCheckUtils]: 102: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short13; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,187 INFO L280 TraceCheckUtils]: 103: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,188 INFO L280 TraceCheckUtils]: 104: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short17; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,188 INFO L280 TraceCheckUtils]: 105: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short17; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,189 INFO L280 TraceCheckUtils]: 106: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem16; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,190 INFO L280 TraceCheckUtils]: 107: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short17; {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:15,190 INFO L280 TraceCheckUtils]: 108: Hoare triple {14176#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {14164#false} is VALID [2020-07-18 06:35:15,191 INFO L280 TraceCheckUtils]: 109: Hoare triple {14164#false} assume !(1 + (~j~0 - ~start~0) >= 2); {14164#false} is VALID [2020-07-18 06:35:15,191 INFO L263 TraceCheckUtils]: 110: Hoare triple {14164#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {14163#true} is VALID [2020-07-18 06:35:15,191 INFO L280 TraceCheckUtils]: 111: Hoare triple {14163#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {14163#true} is VALID [2020-07-18 06:35:15,191 INFO L280 TraceCheckUtils]: 112: Hoare triple {14163#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {14163#true} is VALID [2020-07-18 06:35:15,191 INFO L280 TraceCheckUtils]: 113: Hoare triple {14163#true} ~n := #in~n; {14163#true} is VALID [2020-07-18 06:35:15,191 INFO L280 TraceCheckUtils]: 114: Hoare triple {14163#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {14163#true} is VALID [2020-07-18 06:35:15,192 INFO L280 TraceCheckUtils]: 115: Hoare triple {14163#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {14163#true} is VALID [2020-07-18 06:35:15,192 INFO L280 TraceCheckUtils]: 116: Hoare triple {14163#true} havoc #t~ret0.base, #t~ret0.offset; {14163#true} is VALID [2020-07-18 06:35:15,192 INFO L280 TraceCheckUtils]: 117: Hoare triple {14163#true} assume true; {14163#true} is VALID [2020-07-18 06:35:15,192 INFO L275 TraceCheckUtils]: 118: Hoare quadruple {14163#true} {14164#false} #227#return; {14164#false} is VALID [2020-07-18 06:35:15,192 INFO L280 TraceCheckUtils]: 119: Hoare triple {14164#false} havoc #t~ret19.base, #t~ret19.offset; {14164#false} is VALID [2020-07-18 06:35:15,193 INFO L263 TraceCheckUtils]: 120: Hoare triple {14164#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {14164#false} is VALID [2020-07-18 06:35:15,193 INFO L280 TraceCheckUtils]: 121: Hoare triple {14164#false} ~cond := #in~cond; {14164#false} is VALID [2020-07-18 06:35:15,193 INFO L280 TraceCheckUtils]: 122: Hoare triple {14164#false} assume 0 == ~cond; {14164#false} is VALID [2020-07-18 06:35:15,193 INFO L280 TraceCheckUtils]: 123: Hoare triple {14164#false} assume !false; {14164#false} is VALID [2020-07-18 06:35:15,208 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2020-07-18 06:35:15,208 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1869040113] [2020-07-18 06:35:15,209 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:35:15,209 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2020-07-18 06:35:15,209 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1416036785] [2020-07-18 06:35:15,210 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 124 [2020-07-18 06:35:15,210 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:15,210 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-18 06:35:15,294 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:15,294 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-18 06:35:15,295 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:15,296 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-18 06:35:15,296 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2020-07-18 06:35:15,297 INFO L87 Difference]: Start difference. First operand 200 states and 217 transitions. Second operand 10 states. [2020-07-18 06:35:17,665 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:17,666 INFO L93 Difference]: Finished difference Result 499 states and 555 transitions. [2020-07-18 06:35:17,666 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2020-07-18 06:35:17,666 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 124 [2020-07-18 06:35:17,667 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:17,667 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:35:17,672 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 474 transitions. [2020-07-18 06:35:17,672 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:35:17,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 474 transitions. [2020-07-18 06:35:17,677 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 474 transitions. [2020-07-18 06:35:18,160 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 474 edges. 474 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:18,172 INFO L225 Difference]: With dead ends: 499 [2020-07-18 06:35:18,172 INFO L226 Difference]: Without dead ends: 406 [2020-07-18 06:35:18,173 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=212, Unknown=0, NotChecked=0, Total=272 [2020-07-18 06:35:18,174 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 406 states. [2020-07-18 06:35:18,377 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 406 to 204. [2020-07-18 06:35:18,378 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:18,378 INFO L82 GeneralOperation]: Start isEquivalent. First operand 406 states. Second operand 204 states. [2020-07-18 06:35:18,378 INFO L74 IsIncluded]: Start isIncluded. First operand 406 states. Second operand 204 states. [2020-07-18 06:35:18,378 INFO L87 Difference]: Start difference. First operand 406 states. Second operand 204 states. [2020-07-18 06:35:18,388 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:18,389 INFO L93 Difference]: Finished difference Result 406 states and 451 transitions. [2020-07-18 06:35:18,389 INFO L276 IsEmpty]: Start isEmpty. Operand 406 states and 451 transitions. [2020-07-18 06:35:18,390 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:18,390 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:18,390 INFO L74 IsIncluded]: Start isIncluded. First operand 204 states. Second operand 406 states. [2020-07-18 06:35:18,390 INFO L87 Difference]: Start difference. First operand 204 states. Second operand 406 states. [2020-07-18 06:35:18,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:18,402 INFO L93 Difference]: Finished difference Result 406 states and 451 transitions. [2020-07-18 06:35:18,402 INFO L276 IsEmpty]: Start isEmpty. Operand 406 states and 451 transitions. [2020-07-18 06:35:18,403 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:18,403 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:18,403 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:18,403 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:18,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 204 states. [2020-07-18 06:35:18,407 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 204 states to 204 states and 221 transitions. [2020-07-18 06:35:18,407 INFO L78 Accepts]: Start accepts. Automaton has 204 states and 221 transitions. Word has length 124 [2020-07-18 06:35:18,408 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:18,408 INFO L479 AbstractCegarLoop]: Abstraction has 204 states and 221 transitions. [2020-07-18 06:35:18,408 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-18 06:35:18,408 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 204 states and 221 transitions. [2020-07-18 06:35:18,710 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 221 edges. 221 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:18,710 INFO L276 IsEmpty]: Start isEmpty. Operand 204 states and 221 transitions. [2020-07-18 06:35:18,712 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 127 [2020-07-18 06:35:18,713 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:18,713 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 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, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:35:18,713 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2020-07-18 06:35:18,713 INFO L427 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:18,713 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:18,714 INFO L82 PathProgramCache]: Analyzing trace with hash -1120204730, now seen corresponding path program 1 times [2020-07-18 06:35:18,714 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:18,714 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1358470220] [2020-07-18 06:35:18,714 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:18,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:18,892 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:18,895 INFO L280 TraceCheckUtils]: 0: Hoare triple {16442#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {16420#true} is VALID [2020-07-18 06:35:18,895 INFO L280 TraceCheckUtils]: 1: Hoare triple {16420#true} #valid := #valid[0 := 0]; {16420#true} is VALID [2020-07-18 06:35:18,895 INFO L280 TraceCheckUtils]: 2: Hoare triple {16420#true} assume 0 < #StackHeapBarrier; {16420#true} is VALID [2020-07-18 06:35:18,895 INFO L280 TraceCheckUtils]: 3: Hoare triple {16420#true} assume true; {16420#true} is VALID [2020-07-18 06:35:18,896 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {16420#true} {16420#true} #231#return; {16420#true} is VALID [2020-07-18 06:35:18,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:18,899 INFO L280 TraceCheckUtils]: 0: Hoare triple {16420#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {16420#true} is VALID [2020-07-18 06:35:18,899 INFO L280 TraceCheckUtils]: 1: Hoare triple {16420#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {16420#true} is VALID [2020-07-18 06:35:18,900 INFO L280 TraceCheckUtils]: 2: Hoare triple {16420#true} ~n := #in~n; {16420#true} is VALID [2020-07-18 06:35:18,900 INFO L280 TraceCheckUtils]: 3: Hoare triple {16420#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {16420#true} is VALID [2020-07-18 06:35:18,900 INFO L280 TraceCheckUtils]: 4: Hoare triple {16420#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {16420#true} is VALID [2020-07-18 06:35:18,900 INFO L280 TraceCheckUtils]: 5: Hoare triple {16420#true} havoc #t~ret0.base, #t~ret0.offset; {16420#true} is VALID [2020-07-18 06:35:18,900 INFO L280 TraceCheckUtils]: 6: Hoare triple {16420#true} assume true; {16420#true} is VALID [2020-07-18 06:35:18,901 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {16420#true} {16421#false} #227#return; {16421#false} is VALID [2020-07-18 06:35:18,901 INFO L263 TraceCheckUtils]: 0: Hoare triple {16420#true} call ULTIMATE.init(); {16442#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:18,902 INFO L280 TraceCheckUtils]: 1: Hoare triple {16442#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {16420#true} is VALID [2020-07-18 06:35:18,902 INFO L280 TraceCheckUtils]: 2: Hoare triple {16420#true} #valid := #valid[0 := 0]; {16420#true} is VALID [2020-07-18 06:35:18,902 INFO L280 TraceCheckUtils]: 3: Hoare triple {16420#true} assume 0 < #StackHeapBarrier; {16420#true} is VALID [2020-07-18 06:35:18,902 INFO L280 TraceCheckUtils]: 4: Hoare triple {16420#true} assume true; {16420#true} is VALID [2020-07-18 06:35:18,902 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {16420#true} {16420#true} #231#return; {16420#true} is VALID [2020-07-18 06:35:18,903 INFO L263 TraceCheckUtils]: 6: Hoare triple {16420#true} call #t~ret23 := main(); {16420#true} is VALID [2020-07-18 06:35:18,903 INFO L280 TraceCheckUtils]: 7: Hoare triple {16420#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {16420#true} is VALID [2020-07-18 06:35:18,903 INFO L280 TraceCheckUtils]: 8: Hoare triple {16420#true} ~i~1 := 0; {16420#true} is VALID [2020-07-18 06:35:18,903 INFO L280 TraceCheckUtils]: 9: Hoare triple {16420#true} assume !!(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,903 INFO L280 TraceCheckUtils]: 10: Hoare triple {16420#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {16420#true} is VALID [2020-07-18 06:35:18,903 INFO L280 TraceCheckUtils]: 11: Hoare triple {16420#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {16420#true} is VALID [2020-07-18 06:35:18,904 INFO L280 TraceCheckUtils]: 12: Hoare triple {16420#true} havoc #t~nondet21; {16420#true} is VALID [2020-07-18 06:35:18,904 INFO L280 TraceCheckUtils]: 13: Hoare triple {16420#true} #t~post20 := ~i~1; {16420#true} is VALID [2020-07-18 06:35:18,904 INFO L280 TraceCheckUtils]: 14: Hoare triple {16420#true} ~i~1 := 1 + #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,904 INFO L280 TraceCheckUtils]: 15: Hoare triple {16420#true} havoc #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,904 INFO L280 TraceCheckUtils]: 16: Hoare triple {16420#true} assume !!(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,905 INFO L280 TraceCheckUtils]: 17: Hoare triple {16420#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {16420#true} is VALID [2020-07-18 06:35:18,905 INFO L280 TraceCheckUtils]: 18: Hoare triple {16420#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {16420#true} is VALID [2020-07-18 06:35:18,905 INFO L280 TraceCheckUtils]: 19: Hoare triple {16420#true} havoc #t~nondet21; {16420#true} is VALID [2020-07-18 06:35:18,905 INFO L280 TraceCheckUtils]: 20: Hoare triple {16420#true} #t~post20 := ~i~1; {16420#true} is VALID [2020-07-18 06:35:18,905 INFO L280 TraceCheckUtils]: 21: Hoare triple {16420#true} ~i~1 := 1 + #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,905 INFO L280 TraceCheckUtils]: 22: Hoare triple {16420#true} havoc #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,906 INFO L280 TraceCheckUtils]: 23: Hoare triple {16420#true} assume !!(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,906 INFO L280 TraceCheckUtils]: 24: Hoare triple {16420#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {16420#true} is VALID [2020-07-18 06:35:18,906 INFO L280 TraceCheckUtils]: 25: Hoare triple {16420#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {16420#true} is VALID [2020-07-18 06:35:18,906 INFO L280 TraceCheckUtils]: 26: Hoare triple {16420#true} havoc #t~nondet21; {16420#true} is VALID [2020-07-18 06:35:18,906 INFO L280 TraceCheckUtils]: 27: Hoare triple {16420#true} #t~post20 := ~i~1; {16420#true} is VALID [2020-07-18 06:35:18,906 INFO L280 TraceCheckUtils]: 28: Hoare triple {16420#true} ~i~1 := 1 + #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,907 INFO L280 TraceCheckUtils]: 29: Hoare triple {16420#true} havoc #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,907 INFO L280 TraceCheckUtils]: 30: Hoare triple {16420#true} assume !!(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,907 INFO L280 TraceCheckUtils]: 31: Hoare triple {16420#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {16420#true} is VALID [2020-07-18 06:35:18,907 INFO L280 TraceCheckUtils]: 32: Hoare triple {16420#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {16420#true} is VALID [2020-07-18 06:35:18,907 INFO L280 TraceCheckUtils]: 33: Hoare triple {16420#true} havoc #t~nondet21; {16420#true} is VALID [2020-07-18 06:35:18,907 INFO L280 TraceCheckUtils]: 34: Hoare triple {16420#true} #t~post20 := ~i~1; {16420#true} is VALID [2020-07-18 06:35:18,908 INFO L280 TraceCheckUtils]: 35: Hoare triple {16420#true} ~i~1 := 1 + #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,908 INFO L280 TraceCheckUtils]: 36: Hoare triple {16420#true} havoc #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,908 INFO L280 TraceCheckUtils]: 37: Hoare triple {16420#true} assume !!(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,908 INFO L280 TraceCheckUtils]: 38: Hoare triple {16420#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {16420#true} is VALID [2020-07-18 06:35:18,908 INFO L280 TraceCheckUtils]: 39: Hoare triple {16420#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {16420#true} is VALID [2020-07-18 06:35:18,909 INFO L280 TraceCheckUtils]: 40: Hoare triple {16420#true} havoc #t~nondet21; {16420#true} is VALID [2020-07-18 06:35:18,909 INFO L280 TraceCheckUtils]: 41: Hoare triple {16420#true} #t~post20 := ~i~1; {16420#true} is VALID [2020-07-18 06:35:18,909 INFO L280 TraceCheckUtils]: 42: Hoare triple {16420#true} ~i~1 := 1 + #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,909 INFO L280 TraceCheckUtils]: 43: Hoare triple {16420#true} havoc #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,909 INFO L280 TraceCheckUtils]: 44: Hoare triple {16420#true} assume !!(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,909 INFO L280 TraceCheckUtils]: 45: Hoare triple {16420#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {16420#true} is VALID [2020-07-18 06:35:18,910 INFO L280 TraceCheckUtils]: 46: Hoare triple {16420#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {16420#true} is VALID [2020-07-18 06:35:18,910 INFO L280 TraceCheckUtils]: 47: Hoare triple {16420#true} havoc #t~nondet21; {16420#true} is VALID [2020-07-18 06:35:18,910 INFO L280 TraceCheckUtils]: 48: Hoare triple {16420#true} #t~post20 := ~i~1; {16420#true} is VALID [2020-07-18 06:35:18,910 INFO L280 TraceCheckUtils]: 49: Hoare triple {16420#true} ~i~1 := 1 + #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,910 INFO L280 TraceCheckUtils]: 50: Hoare triple {16420#true} havoc #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,910 INFO L280 TraceCheckUtils]: 51: Hoare triple {16420#true} assume !!(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,911 INFO L280 TraceCheckUtils]: 52: Hoare triple {16420#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {16420#true} is VALID [2020-07-18 06:35:18,911 INFO L280 TraceCheckUtils]: 53: Hoare triple {16420#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {16420#true} is VALID [2020-07-18 06:35:18,911 INFO L280 TraceCheckUtils]: 54: Hoare triple {16420#true} havoc #t~nondet21; {16420#true} is VALID [2020-07-18 06:35:18,911 INFO L280 TraceCheckUtils]: 55: Hoare triple {16420#true} #t~post20 := ~i~1; {16420#true} is VALID [2020-07-18 06:35:18,911 INFO L280 TraceCheckUtils]: 56: Hoare triple {16420#true} ~i~1 := 1 + #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,911 INFO L280 TraceCheckUtils]: 57: Hoare triple {16420#true} havoc #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,912 INFO L280 TraceCheckUtils]: 58: Hoare triple {16420#true} assume !!(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,912 INFO L280 TraceCheckUtils]: 59: Hoare triple {16420#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {16420#true} is VALID [2020-07-18 06:35:18,912 INFO L280 TraceCheckUtils]: 60: Hoare triple {16420#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {16420#true} is VALID [2020-07-18 06:35:18,912 INFO L280 TraceCheckUtils]: 61: Hoare triple {16420#true} havoc #t~nondet21; {16420#true} is VALID [2020-07-18 06:35:18,912 INFO L280 TraceCheckUtils]: 62: Hoare triple {16420#true} #t~post20 := ~i~1; {16420#true} is VALID [2020-07-18 06:35:18,913 INFO L280 TraceCheckUtils]: 63: Hoare triple {16420#true} ~i~1 := 1 + #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,913 INFO L280 TraceCheckUtils]: 64: Hoare triple {16420#true} havoc #t~post20; {16420#true} is VALID [2020-07-18 06:35:18,913 INFO L280 TraceCheckUtils]: 65: Hoare triple {16420#true} assume !(~i~1 < 8); {16420#true} is VALID [2020-07-18 06:35:18,913 INFO L280 TraceCheckUtils]: 66: Hoare triple {16420#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {16420#true} is VALID [2020-07-18 06:35:18,913 INFO L263 TraceCheckUtils]: 67: Hoare triple {16420#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {16420#true} is VALID [2020-07-18 06:35:18,913 INFO L280 TraceCheckUtils]: 68: Hoare triple {16420#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {16420#true} is VALID [2020-07-18 06:35:18,917 INFO L280 TraceCheckUtils]: 69: Hoare triple {16420#true} ~start~0 := 0; {16427#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:18,918 INFO L280 TraceCheckUtils]: 70: Hoare triple {16427#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {16428#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:18,919 INFO L280 TraceCheckUtils]: 71: Hoare triple {16428#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} ~j~0 := -1; {16428#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:18,920 INFO L280 TraceCheckUtils]: 72: Hoare triple {16428#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {16428#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:18,920 INFO L280 TraceCheckUtils]: 73: Hoare triple {16428#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} assume !(~str.base == 0 && ~str.offset == 0); {16428#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:18,921 INFO L280 TraceCheckUtils]: 74: Hoare triple {16428#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} #t~post2 := ~i~0; {16429#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-18 06:35:18,922 INFO L280 TraceCheckUtils]: 75: Hoare triple {16429#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} ~i~0 := 1 + #t~post2; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,922 INFO L280 TraceCheckUtils]: 76: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~post2; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,923 INFO L280 TraceCheckUtils]: 77: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,924 INFO L280 TraceCheckUtils]: 78: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~switch4 := 0 == #t~mem3; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,924 INFO L280 TraceCheckUtils]: 79: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume #t~switch4; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,925 INFO L280 TraceCheckUtils]: 80: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,926 INFO L280 TraceCheckUtils]: 81: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 32 == #t~mem5; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,926 INFO L280 TraceCheckUtils]: 82: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,927 INFO L280 TraceCheckUtils]: 83: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-4 {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,928 INFO L280 TraceCheckUtils]: 84: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 9 == #t~mem6; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,928 INFO L280 TraceCheckUtils]: 85: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,929 INFO L280 TraceCheckUtils]: 86: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~short7; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,929 INFO L280 TraceCheckUtils]: 87: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem6; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,930 INFO L280 TraceCheckUtils]: 88: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem5; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,931 INFO L280 TraceCheckUtils]: 89: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,931 INFO L280 TraceCheckUtils]: 90: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !(34 == #t~mem9); {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,932 INFO L280 TraceCheckUtils]: 91: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem9; {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:18,933 INFO L280 TraceCheckUtils]: 92: Hoare triple {16430#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} ~j~0 := ~i~0 - 1; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,933 INFO L280 TraceCheckUtils]: 93: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short14 := 0 < ~j~0; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,934 INFO L280 TraceCheckUtils]: 94: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short14; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,934 INFO L280 TraceCheckUtils]: 95: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short14; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,935 INFO L280 TraceCheckUtils]: 96: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short14; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,936 INFO L280 TraceCheckUtils]: 97: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem11; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,936 INFO L280 TraceCheckUtils]: 98: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem12; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,937 INFO L280 TraceCheckUtils]: 99: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short13; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,938 INFO L280 TraceCheckUtils]: 100: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short17 := 0 < ~j~0; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,938 INFO L280 TraceCheckUtils]: 101: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume #t~short17; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,939 INFO L280 TraceCheckUtils]: 102: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} SUMMARY for call #t~mem16 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L60-1 {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,940 INFO L280 TraceCheckUtils]: 103: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short17 := 34 == #t~mem16; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,940 INFO L280 TraceCheckUtils]: 104: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume #t~short17; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,941 INFO L280 TraceCheckUtils]: 105: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem16; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,941 INFO L280 TraceCheckUtils]: 106: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short17; {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-18 06:35:18,942 INFO L280 TraceCheckUtils]: 107: Hoare triple {16431#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~post18 := ~j~0; {16432#(and (= 0 parse_expression_list_~start~0) (<= (+ |parse_expression_list_#t~post18| 1) 0))} is VALID [2020-07-18 06:35:18,943 INFO L280 TraceCheckUtils]: 108: Hoare triple {16432#(and (= 0 parse_expression_list_~start~0) (<= (+ |parse_expression_list_#t~post18| 1) 0))} ~j~0 := #t~post18 - 1; {16433#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) 0))} is VALID [2020-07-18 06:35:18,944 INFO L280 TraceCheckUtils]: 109: Hoare triple {16433#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) 0))} havoc #t~post18; {16433#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) 0))} is VALID [2020-07-18 06:35:18,944 INFO L280 TraceCheckUtils]: 110: Hoare triple {16433#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) 0))} assume ~start~0 <= ~j~0; {16421#false} is VALID [2020-07-18 06:35:18,944 INFO L280 TraceCheckUtils]: 111: Hoare triple {16421#false} assume !(1 + (~j~0 - ~start~0) >= 2); {16421#false} is VALID [2020-07-18 06:35:18,945 INFO L263 TraceCheckUtils]: 112: Hoare triple {16421#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {16420#true} is VALID [2020-07-18 06:35:18,945 INFO L280 TraceCheckUtils]: 113: Hoare triple {16420#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {16420#true} is VALID [2020-07-18 06:35:18,945 INFO L280 TraceCheckUtils]: 114: Hoare triple {16420#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {16420#true} is VALID [2020-07-18 06:35:18,945 INFO L280 TraceCheckUtils]: 115: Hoare triple {16420#true} ~n := #in~n; {16420#true} is VALID [2020-07-18 06:35:18,945 INFO L280 TraceCheckUtils]: 116: Hoare triple {16420#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {16420#true} is VALID [2020-07-18 06:35:18,946 INFO L280 TraceCheckUtils]: 117: Hoare triple {16420#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {16420#true} is VALID [2020-07-18 06:35:18,946 INFO L280 TraceCheckUtils]: 118: Hoare triple {16420#true} havoc #t~ret0.base, #t~ret0.offset; {16420#true} is VALID [2020-07-18 06:35:18,946 INFO L280 TraceCheckUtils]: 119: Hoare triple {16420#true} assume true; {16420#true} is VALID [2020-07-18 06:35:18,946 INFO L275 TraceCheckUtils]: 120: Hoare quadruple {16420#true} {16421#false} #227#return; {16421#false} is VALID [2020-07-18 06:35:18,946 INFO L280 TraceCheckUtils]: 121: Hoare triple {16421#false} havoc #t~ret19.base, #t~ret19.offset; {16421#false} is VALID [2020-07-18 06:35:18,946 INFO L263 TraceCheckUtils]: 122: Hoare triple {16421#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {16421#false} is VALID [2020-07-18 06:35:18,947 INFO L280 TraceCheckUtils]: 123: Hoare triple {16421#false} ~cond := #in~cond; {16421#false} is VALID [2020-07-18 06:35:18,947 INFO L280 TraceCheckUtils]: 124: Hoare triple {16421#false} assume 0 == ~cond; {16421#false} is VALID [2020-07-18 06:35:18,947 INFO L280 TraceCheckUtils]: 125: Hoare triple {16421#false} assume !false; {16421#false} is VALID [2020-07-18 06:35:18,964 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2020-07-18 06:35:18,965 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1358470220] [2020-07-18 06:35:18,965 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:35:18,965 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2020-07-18 06:35:18,965 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [489696260] [2020-07-18 06:35:18,966 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 126 [2020-07-18 06:35:18,966 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:18,967 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-18 06:35:19,042 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:19,042 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-18 06:35:19,042 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:19,043 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-18 06:35:19,043 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=65, Unknown=0, NotChecked=0, Total=90 [2020-07-18 06:35:19,043 INFO L87 Difference]: Start difference. First operand 204 states and 221 transitions. Second operand 10 states. [2020-07-18 06:35:21,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:21,503 INFO L93 Difference]: Finished difference Result 450 states and 497 transitions. [2020-07-18 06:35:21,503 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-18 06:35:21,503 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 126 [2020-07-18 06:35:21,503 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:21,504 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:35:21,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 416 transitions. [2020-07-18 06:35:21,508 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-18 06:35:21,513 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 416 transitions. [2020-07-18 06:35:21,514 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 416 transitions. [2020-07-18 06:35:22,082 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 416 edges. 416 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:22,103 INFO L225 Difference]: With dead ends: 450 [2020-07-18 06:35:22,103 INFO L226 Difference]: Without dead ends: 346 [2020-07-18 06:35:22,111 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=100, Invalid=280, Unknown=0, NotChecked=0, Total=380 [2020-07-18 06:35:22,113 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 346 states. [2020-07-18 06:35:22,488 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 346 to 214. [2020-07-18 06:35:22,488 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:22,488 INFO L82 GeneralOperation]: Start isEquivalent. First operand 346 states. Second operand 214 states. [2020-07-18 06:35:22,489 INFO L74 IsIncluded]: Start isIncluded. First operand 346 states. Second operand 214 states. [2020-07-18 06:35:22,489 INFO L87 Difference]: Start difference. First operand 346 states. Second operand 214 states. [2020-07-18 06:35:22,506 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:22,507 INFO L93 Difference]: Finished difference Result 346 states and 383 transitions. [2020-07-18 06:35:22,507 INFO L276 IsEmpty]: Start isEmpty. Operand 346 states and 383 transitions. [2020-07-18 06:35:22,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:22,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:22,509 INFO L74 IsIncluded]: Start isIncluded. First operand 214 states. Second operand 346 states. [2020-07-18 06:35:22,509 INFO L87 Difference]: Start difference. First operand 214 states. Second operand 346 states. [2020-07-18 06:35:22,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:22,528 INFO L93 Difference]: Finished difference Result 346 states and 383 transitions. [2020-07-18 06:35:22,529 INFO L276 IsEmpty]: Start isEmpty. Operand 346 states and 383 transitions. [2020-07-18 06:35:22,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:22,530 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:22,531 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:22,531 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:22,531 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 214 states. [2020-07-18 06:35:22,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 214 states to 214 states and 233 transitions. [2020-07-18 06:35:22,539 INFO L78 Accepts]: Start accepts. Automaton has 214 states and 233 transitions. Word has length 126 [2020-07-18 06:35:22,540 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:22,540 INFO L479 AbstractCegarLoop]: Abstraction has 214 states and 233 transitions. [2020-07-18 06:35:22,540 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-18 06:35:22,540 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 214 states and 233 transitions. [2020-07-18 06:35:22,948 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 233 edges. 233 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:22,948 INFO L276 IsEmpty]: Start isEmpty. Operand 214 states and 233 transitions. [2020-07-18 06:35:22,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 130 [2020-07-18 06:35:22,951 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:22,951 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 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, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:35:22,952 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2020-07-18 06:35:22,952 INFO L427 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:22,952 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:22,953 INFO L82 PathProgramCache]: Analyzing trace with hash 2135603949, now seen corresponding path program 1 times [2020-07-18 06:35:22,953 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:22,954 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [399249584] [2020-07-18 06:35:22,954 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:22,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:23,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:23,250 INFO L280 TraceCheckUtils]: 0: Hoare triple {18509#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {18485#true} is VALID [2020-07-18 06:35:23,250 INFO L280 TraceCheckUtils]: 1: Hoare triple {18485#true} #valid := #valid[0 := 0]; {18485#true} is VALID [2020-07-18 06:35:23,251 INFO L280 TraceCheckUtils]: 2: Hoare triple {18485#true} assume 0 < #StackHeapBarrier; {18485#true} is VALID [2020-07-18 06:35:23,251 INFO L280 TraceCheckUtils]: 3: Hoare triple {18485#true} assume true; {18485#true} is VALID [2020-07-18 06:35:23,252 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {18485#true} {18485#true} #231#return; {18485#true} is VALID [2020-07-18 06:35:23,253 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:23,257 INFO L280 TraceCheckUtils]: 0: Hoare triple {18485#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {18485#true} is VALID [2020-07-18 06:35:23,258 INFO L280 TraceCheckUtils]: 1: Hoare triple {18485#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {18485#true} is VALID [2020-07-18 06:35:23,258 INFO L280 TraceCheckUtils]: 2: Hoare triple {18485#true} ~n := #in~n; {18485#true} is VALID [2020-07-18 06:35:23,259 INFO L280 TraceCheckUtils]: 3: Hoare triple {18485#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {18485#true} is VALID [2020-07-18 06:35:23,259 INFO L280 TraceCheckUtils]: 4: Hoare triple {18485#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {18485#true} is VALID [2020-07-18 06:35:23,259 INFO L280 TraceCheckUtils]: 5: Hoare triple {18485#true} havoc #t~ret0.base, #t~ret0.offset; {18485#true} is VALID [2020-07-18 06:35:23,260 INFO L280 TraceCheckUtils]: 6: Hoare triple {18485#true} assume true; {18485#true} is VALID [2020-07-18 06:35:23,260 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {18485#true} {18486#false} #227#return; {18486#false} is VALID [2020-07-18 06:35:23,261 INFO L263 TraceCheckUtils]: 0: Hoare triple {18485#true} call ULTIMATE.init(); {18509#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:23,262 INFO L280 TraceCheckUtils]: 1: Hoare triple {18509#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {18485#true} is VALID [2020-07-18 06:35:23,262 INFO L280 TraceCheckUtils]: 2: Hoare triple {18485#true} #valid := #valid[0 := 0]; {18485#true} is VALID [2020-07-18 06:35:23,262 INFO L280 TraceCheckUtils]: 3: Hoare triple {18485#true} assume 0 < #StackHeapBarrier; {18485#true} is VALID [2020-07-18 06:35:23,263 INFO L280 TraceCheckUtils]: 4: Hoare triple {18485#true} assume true; {18485#true} is VALID [2020-07-18 06:35:23,263 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {18485#true} {18485#true} #231#return; {18485#true} is VALID [2020-07-18 06:35:23,263 INFO L263 TraceCheckUtils]: 6: Hoare triple {18485#true} call #t~ret23 := main(); {18485#true} is VALID [2020-07-18 06:35:23,264 INFO L280 TraceCheckUtils]: 7: Hoare triple {18485#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {18485#true} is VALID [2020-07-18 06:35:23,264 INFO L280 TraceCheckUtils]: 8: Hoare triple {18485#true} ~i~1 := 0; {18485#true} is VALID [2020-07-18 06:35:23,264 INFO L280 TraceCheckUtils]: 9: Hoare triple {18485#true} assume !!(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,265 INFO L280 TraceCheckUtils]: 10: Hoare triple {18485#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {18485#true} is VALID [2020-07-18 06:35:23,265 INFO L280 TraceCheckUtils]: 11: Hoare triple {18485#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {18485#true} is VALID [2020-07-18 06:35:23,265 INFO L280 TraceCheckUtils]: 12: Hoare triple {18485#true} havoc #t~nondet21; {18485#true} is VALID [2020-07-18 06:35:23,266 INFO L280 TraceCheckUtils]: 13: Hoare triple {18485#true} #t~post20 := ~i~1; {18485#true} is VALID [2020-07-18 06:35:23,266 INFO L280 TraceCheckUtils]: 14: Hoare triple {18485#true} ~i~1 := 1 + #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,266 INFO L280 TraceCheckUtils]: 15: Hoare triple {18485#true} havoc #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,266 INFO L280 TraceCheckUtils]: 16: Hoare triple {18485#true} assume !!(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,267 INFO L280 TraceCheckUtils]: 17: Hoare triple {18485#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {18485#true} is VALID [2020-07-18 06:35:23,267 INFO L280 TraceCheckUtils]: 18: Hoare triple {18485#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {18485#true} is VALID [2020-07-18 06:35:23,267 INFO L280 TraceCheckUtils]: 19: Hoare triple {18485#true} havoc #t~nondet21; {18485#true} is VALID [2020-07-18 06:35:23,268 INFO L280 TraceCheckUtils]: 20: Hoare triple {18485#true} #t~post20 := ~i~1; {18485#true} is VALID [2020-07-18 06:35:23,268 INFO L280 TraceCheckUtils]: 21: Hoare triple {18485#true} ~i~1 := 1 + #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,268 INFO L280 TraceCheckUtils]: 22: Hoare triple {18485#true} havoc #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,269 INFO L280 TraceCheckUtils]: 23: Hoare triple {18485#true} assume !!(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,269 INFO L280 TraceCheckUtils]: 24: Hoare triple {18485#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {18485#true} is VALID [2020-07-18 06:35:23,269 INFO L280 TraceCheckUtils]: 25: Hoare triple {18485#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {18485#true} is VALID [2020-07-18 06:35:23,270 INFO L280 TraceCheckUtils]: 26: Hoare triple {18485#true} havoc #t~nondet21; {18485#true} is VALID [2020-07-18 06:35:23,270 INFO L280 TraceCheckUtils]: 27: Hoare triple {18485#true} #t~post20 := ~i~1; {18485#true} is VALID [2020-07-18 06:35:23,270 INFO L280 TraceCheckUtils]: 28: Hoare triple {18485#true} ~i~1 := 1 + #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,270 INFO L280 TraceCheckUtils]: 29: Hoare triple {18485#true} havoc #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,271 INFO L280 TraceCheckUtils]: 30: Hoare triple {18485#true} assume !!(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,271 INFO L280 TraceCheckUtils]: 31: Hoare triple {18485#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {18485#true} is VALID [2020-07-18 06:35:23,271 INFO L280 TraceCheckUtils]: 32: Hoare triple {18485#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {18485#true} is VALID [2020-07-18 06:35:23,272 INFO L280 TraceCheckUtils]: 33: Hoare triple {18485#true} havoc #t~nondet21; {18485#true} is VALID [2020-07-18 06:35:23,272 INFO L280 TraceCheckUtils]: 34: Hoare triple {18485#true} #t~post20 := ~i~1; {18485#true} is VALID [2020-07-18 06:35:23,272 INFO L280 TraceCheckUtils]: 35: Hoare triple {18485#true} ~i~1 := 1 + #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,273 INFO L280 TraceCheckUtils]: 36: Hoare triple {18485#true} havoc #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,273 INFO L280 TraceCheckUtils]: 37: Hoare triple {18485#true} assume !!(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,273 INFO L280 TraceCheckUtils]: 38: Hoare triple {18485#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {18485#true} is VALID [2020-07-18 06:35:23,274 INFO L280 TraceCheckUtils]: 39: Hoare triple {18485#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {18485#true} is VALID [2020-07-18 06:35:23,274 INFO L280 TraceCheckUtils]: 40: Hoare triple {18485#true} havoc #t~nondet21; {18485#true} is VALID [2020-07-18 06:35:23,274 INFO L280 TraceCheckUtils]: 41: Hoare triple {18485#true} #t~post20 := ~i~1; {18485#true} is VALID [2020-07-18 06:35:23,275 INFO L280 TraceCheckUtils]: 42: Hoare triple {18485#true} ~i~1 := 1 + #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,275 INFO L280 TraceCheckUtils]: 43: Hoare triple {18485#true} havoc #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,275 INFO L280 TraceCheckUtils]: 44: Hoare triple {18485#true} assume !!(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,276 INFO L280 TraceCheckUtils]: 45: Hoare triple {18485#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {18485#true} is VALID [2020-07-18 06:35:23,276 INFO L280 TraceCheckUtils]: 46: Hoare triple {18485#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {18485#true} is VALID [2020-07-18 06:35:23,276 INFO L280 TraceCheckUtils]: 47: Hoare triple {18485#true} havoc #t~nondet21; {18485#true} is VALID [2020-07-18 06:35:23,277 INFO L280 TraceCheckUtils]: 48: Hoare triple {18485#true} #t~post20 := ~i~1; {18485#true} is VALID [2020-07-18 06:35:23,277 INFO L280 TraceCheckUtils]: 49: Hoare triple {18485#true} ~i~1 := 1 + #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,277 INFO L280 TraceCheckUtils]: 50: Hoare triple {18485#true} havoc #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,278 INFO L280 TraceCheckUtils]: 51: Hoare triple {18485#true} assume !!(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,278 INFO L280 TraceCheckUtils]: 52: Hoare triple {18485#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {18485#true} is VALID [2020-07-18 06:35:23,278 INFO L280 TraceCheckUtils]: 53: Hoare triple {18485#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {18485#true} is VALID [2020-07-18 06:35:23,279 INFO L280 TraceCheckUtils]: 54: Hoare triple {18485#true} havoc #t~nondet21; {18485#true} is VALID [2020-07-18 06:35:23,279 INFO L280 TraceCheckUtils]: 55: Hoare triple {18485#true} #t~post20 := ~i~1; {18485#true} is VALID [2020-07-18 06:35:23,279 INFO L280 TraceCheckUtils]: 56: Hoare triple {18485#true} ~i~1 := 1 + #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,279 INFO L280 TraceCheckUtils]: 57: Hoare triple {18485#true} havoc #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,280 INFO L280 TraceCheckUtils]: 58: Hoare triple {18485#true} assume !!(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,280 INFO L280 TraceCheckUtils]: 59: Hoare triple {18485#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {18485#true} is VALID [2020-07-18 06:35:23,280 INFO L280 TraceCheckUtils]: 60: Hoare triple {18485#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {18485#true} is VALID [2020-07-18 06:35:23,280 INFO L280 TraceCheckUtils]: 61: Hoare triple {18485#true} havoc #t~nondet21; {18485#true} is VALID [2020-07-18 06:35:23,281 INFO L280 TraceCheckUtils]: 62: Hoare triple {18485#true} #t~post20 := ~i~1; {18485#true} is VALID [2020-07-18 06:35:23,281 INFO L280 TraceCheckUtils]: 63: Hoare triple {18485#true} ~i~1 := 1 + #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,281 INFO L280 TraceCheckUtils]: 64: Hoare triple {18485#true} havoc #t~post20; {18485#true} is VALID [2020-07-18 06:35:23,281 INFO L280 TraceCheckUtils]: 65: Hoare triple {18485#true} assume !(~i~1 < 8); {18485#true} is VALID [2020-07-18 06:35:23,282 INFO L280 TraceCheckUtils]: 66: Hoare triple {18485#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {18485#true} is VALID [2020-07-18 06:35:23,282 INFO L263 TraceCheckUtils]: 67: Hoare triple {18485#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {18485#true} is VALID [2020-07-18 06:35:23,282 INFO L280 TraceCheckUtils]: 68: Hoare triple {18485#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {18485#true} is VALID [2020-07-18 06:35:23,283 INFO L280 TraceCheckUtils]: 69: Hoare triple {18485#true} ~start~0 := 0; {18492#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,284 INFO L280 TraceCheckUtils]: 70: Hoare triple {18492#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {18493#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:23,286 INFO L280 TraceCheckUtils]: 71: Hoare triple {18493#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} ~j~0 := -1; {18493#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:23,287 INFO L280 TraceCheckUtils]: 72: Hoare triple {18493#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {18493#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:23,288 INFO L280 TraceCheckUtils]: 73: Hoare triple {18493#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} assume !(~str.base == 0 && ~str.offset == 0); {18493#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-18 06:35:23,290 INFO L280 TraceCheckUtils]: 74: Hoare triple {18493#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} #t~post2 := ~i~0; {18494#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-18 06:35:23,291 INFO L280 TraceCheckUtils]: 75: Hoare triple {18494#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} ~i~0 := 1 + #t~post2; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,292 INFO L280 TraceCheckUtils]: 76: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~post2; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,294 INFO L280 TraceCheckUtils]: 77: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,295 INFO L280 TraceCheckUtils]: 78: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~switch4 := 0 == #t~mem3; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,296 INFO L280 TraceCheckUtils]: 79: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume #t~switch4; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,297 INFO L280 TraceCheckUtils]: 80: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,299 INFO L280 TraceCheckUtils]: 81: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 32 == #t~mem5; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,300 INFO L280 TraceCheckUtils]: 82: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,301 INFO L280 TraceCheckUtils]: 83: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-4 {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,303 INFO L280 TraceCheckUtils]: 84: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 9 == #t~mem6; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,304 INFO L280 TraceCheckUtils]: 85: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,305 INFO L280 TraceCheckUtils]: 86: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~short7; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,307 INFO L280 TraceCheckUtils]: 87: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem6; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,308 INFO L280 TraceCheckUtils]: 88: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem5; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,309 INFO L280 TraceCheckUtils]: 89: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,310 INFO L280 TraceCheckUtils]: 90: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume 34 == #t~mem9; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,311 INFO L280 TraceCheckUtils]: 91: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem9; {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,313 INFO L280 TraceCheckUtils]: 92: Hoare triple {18495#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~post10 := ~start~0; {18496#(and (= 0 |parse_expression_list_#t~post10|) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-18 06:35:23,314 INFO L280 TraceCheckUtils]: 93: Hoare triple {18496#(and (= 0 |parse_expression_list_#t~post10|) (<= parse_expression_list_~i~0 0))} ~start~0 := 1 + #t~post10; {18497#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,315 INFO L280 TraceCheckUtils]: 94: Hoare triple {18497#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} havoc #t~post10; {18497#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,317 INFO L280 TraceCheckUtils]: 95: Hoare triple {18497#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,318 INFO L280 TraceCheckUtils]: 96: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,319 INFO L280 TraceCheckUtils]: 97: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,320 INFO L280 TraceCheckUtils]: 98: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,321 INFO L280 TraceCheckUtils]: 99: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short14; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,322 INFO L280 TraceCheckUtils]: 100: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem11; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,323 INFO L280 TraceCheckUtils]: 101: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem12; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,324 INFO L280 TraceCheckUtils]: 102: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short13; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,325 INFO L280 TraceCheckUtils]: 103: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,327 INFO L280 TraceCheckUtils]: 104: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume #t~short17; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,328 INFO L280 TraceCheckUtils]: 105: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} SUMMARY for call #t~mem16 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L60-1 {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,328 INFO L280 TraceCheckUtils]: 106: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short17 := 34 == #t~mem16; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,329 INFO L280 TraceCheckUtils]: 107: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume #t~short17; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,330 INFO L280 TraceCheckUtils]: 108: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem16; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,331 INFO L280 TraceCheckUtils]: 109: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short17; {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,333 INFO L280 TraceCheckUtils]: 110: Hoare triple {18498#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~post18 := ~j~0; {18499#(<= (+ |parse_expression_list_#t~post18| 2) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,334 INFO L280 TraceCheckUtils]: 111: Hoare triple {18499#(<= (+ |parse_expression_list_#t~post18| 2) parse_expression_list_~start~0)} ~j~0 := #t~post18 - 1; {18500#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,335 INFO L280 TraceCheckUtils]: 112: Hoare triple {18500#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~post18; {18500#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:23,336 INFO L280 TraceCheckUtils]: 113: Hoare triple {18500#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {18486#false} is VALID [2020-07-18 06:35:23,337 INFO L280 TraceCheckUtils]: 114: Hoare triple {18486#false} assume !(1 + (~j~0 - ~start~0) >= 2); {18486#false} is VALID [2020-07-18 06:35:23,337 INFO L263 TraceCheckUtils]: 115: Hoare triple {18486#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {18485#true} is VALID [2020-07-18 06:35:23,337 INFO L280 TraceCheckUtils]: 116: Hoare triple {18485#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {18485#true} is VALID [2020-07-18 06:35:23,337 INFO L280 TraceCheckUtils]: 117: Hoare triple {18485#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {18485#true} is VALID [2020-07-18 06:35:23,338 INFO L280 TraceCheckUtils]: 118: Hoare triple {18485#true} ~n := #in~n; {18485#true} is VALID [2020-07-18 06:35:23,338 INFO L280 TraceCheckUtils]: 119: Hoare triple {18485#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {18485#true} is VALID [2020-07-18 06:35:23,338 INFO L280 TraceCheckUtils]: 120: Hoare triple {18485#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {18485#true} is VALID [2020-07-18 06:35:23,338 INFO L280 TraceCheckUtils]: 121: Hoare triple {18485#true} havoc #t~ret0.base, #t~ret0.offset; {18485#true} is VALID [2020-07-18 06:35:23,339 INFO L280 TraceCheckUtils]: 122: Hoare triple {18485#true} assume true; {18485#true} is VALID [2020-07-18 06:35:23,339 INFO L275 TraceCheckUtils]: 123: Hoare quadruple {18485#true} {18486#false} #227#return; {18486#false} is VALID [2020-07-18 06:35:23,339 INFO L280 TraceCheckUtils]: 124: Hoare triple {18486#false} havoc #t~ret19.base, #t~ret19.offset; {18486#false} is VALID [2020-07-18 06:35:23,340 INFO L263 TraceCheckUtils]: 125: Hoare triple {18486#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {18486#false} is VALID [2020-07-18 06:35:23,340 INFO L280 TraceCheckUtils]: 126: Hoare triple {18486#false} ~cond := #in~cond; {18486#false} is VALID [2020-07-18 06:35:23,340 INFO L280 TraceCheckUtils]: 127: Hoare triple {18486#false} assume 0 == ~cond; {18486#false} is VALID [2020-07-18 06:35:23,341 INFO L280 TraceCheckUtils]: 128: Hoare triple {18486#false} assume !false; {18486#false} is VALID [2020-07-18 06:35:23,374 INFO L134 CoverageAnalysis]: Checked inductivity of 204 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2020-07-18 06:35:23,374 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [399249584] [2020-07-18 06:35:23,375 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:35:23,375 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2020-07-18 06:35:23,375 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [855480386] [2020-07-18 06:35:23,377 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 129 [2020-07-18 06:35:23,378 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:23,378 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-18 06:35:23,514 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:23,515 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-18 06:35:23,515 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:23,516 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-18 06:35:23,516 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2020-07-18 06:35:23,516 INFO L87 Difference]: Start difference. First operand 214 states and 233 transitions. Second operand 12 states. [2020-07-18 06:35:27,245 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:27,245 INFO L93 Difference]: Finished difference Result 488 states and 541 transitions. [2020-07-18 06:35:27,246 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2020-07-18 06:35:27,246 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 129 [2020-07-18 06:35:27,246 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:27,246 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 06:35:27,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 471 transitions. [2020-07-18 06:35:27,251 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-18 06:35:27,255 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 471 transitions. [2020-07-18 06:35:27,256 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 471 transitions. [2020-07-18 06:35:27,845 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 471 edges. 471 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:27,856 INFO L225 Difference]: With dead ends: 488 [2020-07-18 06:35:27,857 INFO L226 Difference]: Without dead ends: 384 [2020-07-18 06:35:27,858 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=86, Invalid=376, Unknown=0, NotChecked=0, Total=462 [2020-07-18 06:35:27,859 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 384 states. [2020-07-18 06:35:28,072 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 384 to 195. [2020-07-18 06:35:28,072 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:28,073 INFO L82 GeneralOperation]: Start isEquivalent. First operand 384 states. Second operand 195 states. [2020-07-18 06:35:28,073 INFO L74 IsIncluded]: Start isIncluded. First operand 384 states. Second operand 195 states. [2020-07-18 06:35:28,073 INFO L87 Difference]: Start difference. First operand 384 states. Second operand 195 states. [2020-07-18 06:35:28,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:28,084 INFO L93 Difference]: Finished difference Result 384 states and 427 transitions. [2020-07-18 06:35:28,085 INFO L276 IsEmpty]: Start isEmpty. Operand 384 states and 427 transitions. [2020-07-18 06:35:28,086 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:28,086 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:28,086 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand 384 states. [2020-07-18 06:35:28,086 INFO L87 Difference]: Start difference. First operand 195 states. Second operand 384 states. [2020-07-18 06:35:28,099 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:28,099 INFO L93 Difference]: Finished difference Result 384 states and 427 transitions. [2020-07-18 06:35:28,099 INFO L276 IsEmpty]: Start isEmpty. Operand 384 states and 427 transitions. [2020-07-18 06:35:28,100 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:28,100 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:28,100 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:28,101 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:28,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 195 states. [2020-07-18 06:35:28,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 195 states to 195 states and 211 transitions. [2020-07-18 06:35:28,105 INFO L78 Accepts]: Start accepts. Automaton has 195 states and 211 transitions. Word has length 129 [2020-07-18 06:35:28,106 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:28,106 INFO L479 AbstractCegarLoop]: Abstraction has 195 states and 211 transitions. [2020-07-18 06:35:28,106 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-18 06:35:28,106 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 195 states and 211 transitions. [2020-07-18 06:35:28,376 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 211 edges. 211 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:28,377 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 211 transitions. [2020-07-18 06:35:28,381 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 132 [2020-07-18 06:35:28,381 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:28,381 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:35:28,381 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2020-07-18 06:35:28,382 INFO L427 AbstractCegarLoop]: === Iteration 16 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:28,382 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:28,382 INFO L82 PathProgramCache]: Analyzing trace with hash -374659365, now seen corresponding path program 1 times [2020-07-18 06:35:28,382 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:28,382 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [124576692] [2020-07-18 06:35:28,383 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:28,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:28,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:28,508 INFO L280 TraceCheckUtils]: 0: Hoare triple {20686#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {20666#true} is VALID [2020-07-18 06:35:28,508 INFO L280 TraceCheckUtils]: 1: Hoare triple {20666#true} #valid := #valid[0 := 0]; {20666#true} is VALID [2020-07-18 06:35:28,509 INFO L280 TraceCheckUtils]: 2: Hoare triple {20666#true} assume 0 < #StackHeapBarrier; {20666#true} is VALID [2020-07-18 06:35:28,509 INFO L280 TraceCheckUtils]: 3: Hoare triple {20666#true} assume true; {20666#true} is VALID [2020-07-18 06:35:28,509 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {20666#true} {20666#true} #231#return; {20666#true} is VALID [2020-07-18 06:35:28,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:28,513 INFO L280 TraceCheckUtils]: 0: Hoare triple {20666#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {20666#true} is VALID [2020-07-18 06:35:28,513 INFO L280 TraceCheckUtils]: 1: Hoare triple {20666#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {20666#true} is VALID [2020-07-18 06:35:28,514 INFO L280 TraceCheckUtils]: 2: Hoare triple {20666#true} ~n := #in~n; {20666#true} is VALID [2020-07-18 06:35:28,514 INFO L280 TraceCheckUtils]: 3: Hoare triple {20666#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {20666#true} is VALID [2020-07-18 06:35:28,514 INFO L280 TraceCheckUtils]: 4: Hoare triple {20666#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {20666#true} is VALID [2020-07-18 06:35:28,514 INFO L280 TraceCheckUtils]: 5: Hoare triple {20666#true} havoc #t~ret0.base, #t~ret0.offset; {20666#true} is VALID [2020-07-18 06:35:28,515 INFO L280 TraceCheckUtils]: 6: Hoare triple {20666#true} assume true; {20666#true} is VALID [2020-07-18 06:35:28,515 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {20666#true} {20667#false} #227#return; {20667#false} is VALID [2020-07-18 06:35:28,516 INFO L263 TraceCheckUtils]: 0: Hoare triple {20666#true} call ULTIMATE.init(); {20686#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:28,516 INFO L280 TraceCheckUtils]: 1: Hoare triple {20686#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {20666#true} is VALID [2020-07-18 06:35:28,516 INFO L280 TraceCheckUtils]: 2: Hoare triple {20666#true} #valid := #valid[0 := 0]; {20666#true} is VALID [2020-07-18 06:35:28,517 INFO L280 TraceCheckUtils]: 3: Hoare triple {20666#true} assume 0 < #StackHeapBarrier; {20666#true} is VALID [2020-07-18 06:35:28,517 INFO L280 TraceCheckUtils]: 4: Hoare triple {20666#true} assume true; {20666#true} is VALID [2020-07-18 06:35:28,517 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {20666#true} {20666#true} #231#return; {20666#true} is VALID [2020-07-18 06:35:28,517 INFO L263 TraceCheckUtils]: 6: Hoare triple {20666#true} call #t~ret23 := main(); {20666#true} is VALID [2020-07-18 06:35:28,518 INFO L280 TraceCheckUtils]: 7: Hoare triple {20666#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {20666#true} is VALID [2020-07-18 06:35:28,518 INFO L280 TraceCheckUtils]: 8: Hoare triple {20666#true} ~i~1 := 0; {20666#true} is VALID [2020-07-18 06:35:28,518 INFO L280 TraceCheckUtils]: 9: Hoare triple {20666#true} assume !!(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,518 INFO L280 TraceCheckUtils]: 10: Hoare triple {20666#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {20666#true} is VALID [2020-07-18 06:35:28,518 INFO L280 TraceCheckUtils]: 11: Hoare triple {20666#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {20666#true} is VALID [2020-07-18 06:35:28,519 INFO L280 TraceCheckUtils]: 12: Hoare triple {20666#true} havoc #t~nondet21; {20666#true} is VALID [2020-07-18 06:35:28,519 INFO L280 TraceCheckUtils]: 13: Hoare triple {20666#true} #t~post20 := ~i~1; {20666#true} is VALID [2020-07-18 06:35:28,519 INFO L280 TraceCheckUtils]: 14: Hoare triple {20666#true} ~i~1 := 1 + #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,519 INFO L280 TraceCheckUtils]: 15: Hoare triple {20666#true} havoc #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,519 INFO L280 TraceCheckUtils]: 16: Hoare triple {20666#true} assume !!(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,520 INFO L280 TraceCheckUtils]: 17: Hoare triple {20666#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {20666#true} is VALID [2020-07-18 06:35:28,520 INFO L280 TraceCheckUtils]: 18: Hoare triple {20666#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {20666#true} is VALID [2020-07-18 06:35:28,520 INFO L280 TraceCheckUtils]: 19: Hoare triple {20666#true} havoc #t~nondet21; {20666#true} is VALID [2020-07-18 06:35:28,520 INFO L280 TraceCheckUtils]: 20: Hoare triple {20666#true} #t~post20 := ~i~1; {20666#true} is VALID [2020-07-18 06:35:28,520 INFO L280 TraceCheckUtils]: 21: Hoare triple {20666#true} ~i~1 := 1 + #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,521 INFO L280 TraceCheckUtils]: 22: Hoare triple {20666#true} havoc #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,521 INFO L280 TraceCheckUtils]: 23: Hoare triple {20666#true} assume !!(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,521 INFO L280 TraceCheckUtils]: 24: Hoare triple {20666#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {20666#true} is VALID [2020-07-18 06:35:28,521 INFO L280 TraceCheckUtils]: 25: Hoare triple {20666#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {20666#true} is VALID [2020-07-18 06:35:28,521 INFO L280 TraceCheckUtils]: 26: Hoare triple {20666#true} havoc #t~nondet21; {20666#true} is VALID [2020-07-18 06:35:28,522 INFO L280 TraceCheckUtils]: 27: Hoare triple {20666#true} #t~post20 := ~i~1; {20666#true} is VALID [2020-07-18 06:35:28,522 INFO L280 TraceCheckUtils]: 28: Hoare triple {20666#true} ~i~1 := 1 + #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,522 INFO L280 TraceCheckUtils]: 29: Hoare triple {20666#true} havoc #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,522 INFO L280 TraceCheckUtils]: 30: Hoare triple {20666#true} assume !!(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,522 INFO L280 TraceCheckUtils]: 31: Hoare triple {20666#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {20666#true} is VALID [2020-07-18 06:35:28,523 INFO L280 TraceCheckUtils]: 32: Hoare triple {20666#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {20666#true} is VALID [2020-07-18 06:35:28,523 INFO L280 TraceCheckUtils]: 33: Hoare triple {20666#true} havoc #t~nondet21; {20666#true} is VALID [2020-07-18 06:35:28,523 INFO L280 TraceCheckUtils]: 34: Hoare triple {20666#true} #t~post20 := ~i~1; {20666#true} is VALID [2020-07-18 06:35:28,523 INFO L280 TraceCheckUtils]: 35: Hoare triple {20666#true} ~i~1 := 1 + #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,523 INFO L280 TraceCheckUtils]: 36: Hoare triple {20666#true} havoc #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,524 INFO L280 TraceCheckUtils]: 37: Hoare triple {20666#true} assume !!(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,524 INFO L280 TraceCheckUtils]: 38: Hoare triple {20666#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {20666#true} is VALID [2020-07-18 06:35:28,524 INFO L280 TraceCheckUtils]: 39: Hoare triple {20666#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {20666#true} is VALID [2020-07-18 06:35:28,524 INFO L280 TraceCheckUtils]: 40: Hoare triple {20666#true} havoc #t~nondet21; {20666#true} is VALID [2020-07-18 06:35:28,524 INFO L280 TraceCheckUtils]: 41: Hoare triple {20666#true} #t~post20 := ~i~1; {20666#true} is VALID [2020-07-18 06:35:28,525 INFO L280 TraceCheckUtils]: 42: Hoare triple {20666#true} ~i~1 := 1 + #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,525 INFO L280 TraceCheckUtils]: 43: Hoare triple {20666#true} havoc #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,525 INFO L280 TraceCheckUtils]: 44: Hoare triple {20666#true} assume !!(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,525 INFO L280 TraceCheckUtils]: 45: Hoare triple {20666#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {20666#true} is VALID [2020-07-18 06:35:28,525 INFO L280 TraceCheckUtils]: 46: Hoare triple {20666#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {20666#true} is VALID [2020-07-18 06:35:28,525 INFO L280 TraceCheckUtils]: 47: Hoare triple {20666#true} havoc #t~nondet21; {20666#true} is VALID [2020-07-18 06:35:28,526 INFO L280 TraceCheckUtils]: 48: Hoare triple {20666#true} #t~post20 := ~i~1; {20666#true} is VALID [2020-07-18 06:35:28,526 INFO L280 TraceCheckUtils]: 49: Hoare triple {20666#true} ~i~1 := 1 + #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,526 INFO L280 TraceCheckUtils]: 50: Hoare triple {20666#true} havoc #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,526 INFO L280 TraceCheckUtils]: 51: Hoare triple {20666#true} assume !!(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,526 INFO L280 TraceCheckUtils]: 52: Hoare triple {20666#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {20666#true} is VALID [2020-07-18 06:35:28,527 INFO L280 TraceCheckUtils]: 53: Hoare triple {20666#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {20666#true} is VALID [2020-07-18 06:35:28,527 INFO L280 TraceCheckUtils]: 54: Hoare triple {20666#true} havoc #t~nondet21; {20666#true} is VALID [2020-07-18 06:35:28,527 INFO L280 TraceCheckUtils]: 55: Hoare triple {20666#true} #t~post20 := ~i~1; {20666#true} is VALID [2020-07-18 06:35:28,527 INFO L280 TraceCheckUtils]: 56: Hoare triple {20666#true} ~i~1 := 1 + #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,527 INFO L280 TraceCheckUtils]: 57: Hoare triple {20666#true} havoc #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,528 INFO L280 TraceCheckUtils]: 58: Hoare triple {20666#true} assume !!(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,528 INFO L280 TraceCheckUtils]: 59: Hoare triple {20666#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {20666#true} is VALID [2020-07-18 06:35:28,528 INFO L280 TraceCheckUtils]: 60: Hoare triple {20666#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {20666#true} is VALID [2020-07-18 06:35:28,528 INFO L280 TraceCheckUtils]: 61: Hoare triple {20666#true} havoc #t~nondet21; {20666#true} is VALID [2020-07-18 06:35:28,528 INFO L280 TraceCheckUtils]: 62: Hoare triple {20666#true} #t~post20 := ~i~1; {20666#true} is VALID [2020-07-18 06:35:28,529 INFO L280 TraceCheckUtils]: 63: Hoare triple {20666#true} ~i~1 := 1 + #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,529 INFO L280 TraceCheckUtils]: 64: Hoare triple {20666#true} havoc #t~post20; {20666#true} is VALID [2020-07-18 06:35:28,529 INFO L280 TraceCheckUtils]: 65: Hoare triple {20666#true} assume !(~i~1 < 8); {20666#true} is VALID [2020-07-18 06:35:28,529 INFO L280 TraceCheckUtils]: 66: Hoare triple {20666#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {20666#true} is VALID [2020-07-18 06:35:28,529 INFO L263 TraceCheckUtils]: 67: Hoare triple {20666#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {20666#true} is VALID [2020-07-18 06:35:28,530 INFO L280 TraceCheckUtils]: 68: Hoare triple {20666#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {20666#true} is VALID [2020-07-18 06:35:28,534 INFO L280 TraceCheckUtils]: 69: Hoare triple {20666#true} ~start~0 := 0; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,534 INFO L280 TraceCheckUtils]: 70: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,535 INFO L280 TraceCheckUtils]: 71: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} ~j~0 := -1; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,536 INFO L280 TraceCheckUtils]: 72: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,537 INFO L280 TraceCheckUtils]: 73: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} assume !(~str.base == 0 && ~str.offset == 0); {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,537 INFO L280 TraceCheckUtils]: 74: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,538 INFO L280 TraceCheckUtils]: 75: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,538 INFO L280 TraceCheckUtils]: 76: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,539 INFO L280 TraceCheckUtils]: 77: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,539 INFO L280 TraceCheckUtils]: 78: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,540 INFO L280 TraceCheckUtils]: 79: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} assume #t~switch4; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,541 INFO L280 TraceCheckUtils]: 80: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,541 INFO L280 TraceCheckUtils]: 81: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,542 INFO L280 TraceCheckUtils]: 82: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} assume #t~short7; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,543 INFO L280 TraceCheckUtils]: 83: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} assume !!#t~short7; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,544 INFO L280 TraceCheckUtils]: 84: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} havoc #t~short7; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,545 INFO L280 TraceCheckUtils]: 85: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} havoc #t~mem6; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,545 INFO L280 TraceCheckUtils]: 86: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} havoc #t~mem5; {20673#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,546 INFO L280 TraceCheckUtils]: 87: Hoare triple {20673#(= 0 parse_expression_list_~start~0)} #t~post8 := ~start~0; {20674#(= 0 |parse_expression_list_#t~post8|)} is VALID [2020-07-18 06:35:28,548 INFO L280 TraceCheckUtils]: 88: Hoare triple {20674#(= 0 |parse_expression_list_#t~post8|)} ~start~0 := 1 + #t~post8; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,548 INFO L280 TraceCheckUtils]: 89: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} havoc #t~post8; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,549 INFO L280 TraceCheckUtils]: 90: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,550 INFO L280 TraceCheckUtils]: 91: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,551 INFO L280 TraceCheckUtils]: 92: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} assume !#t~short7; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,551 INFO L280 TraceCheckUtils]: 93: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-4 {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,552 INFO L280 TraceCheckUtils]: 94: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} #t~short7 := 9 == #t~mem6; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,552 INFO L280 TraceCheckUtils]: 95: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} assume !#t~short7; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,553 INFO L280 TraceCheckUtils]: 96: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} havoc #t~short7; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,553 INFO L280 TraceCheckUtils]: 97: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} havoc #t~mem6; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,554 INFO L280 TraceCheckUtils]: 98: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} havoc #t~mem5; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,554 INFO L280 TraceCheckUtils]: 99: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,555 INFO L280 TraceCheckUtils]: 100: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} assume !(34 == #t~mem9); {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,556 INFO L280 TraceCheckUtils]: 101: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} havoc #t~mem9; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,557 INFO L280 TraceCheckUtils]: 102: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {20675#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,558 INFO L280 TraceCheckUtils]: 103: Hoare triple {20675#(<= 1 parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {20676#(or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} is VALID [2020-07-18 06:35:28,559 INFO L280 TraceCheckUtils]: 104: Hoare triple {20676#(or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} assume !#t~short14; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,560 INFO L280 TraceCheckUtils]: 105: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short14; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,561 INFO L280 TraceCheckUtils]: 106: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short14; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,561 INFO L280 TraceCheckUtils]: 107: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem11; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,562 INFO L280 TraceCheckUtils]: 108: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem12; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,563 INFO L280 TraceCheckUtils]: 109: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short13; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,563 INFO L280 TraceCheckUtils]: 110: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,564 INFO L280 TraceCheckUtils]: 111: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short17; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,564 INFO L280 TraceCheckUtils]: 112: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short17; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,565 INFO L280 TraceCheckUtils]: 113: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem16; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,565 INFO L280 TraceCheckUtils]: 114: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short17; {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-18 06:35:28,566 INFO L280 TraceCheckUtils]: 115: Hoare triple {20677#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {20667#false} is VALID [2020-07-18 06:35:28,567 INFO L280 TraceCheckUtils]: 116: Hoare triple {20667#false} assume !(1 + (~j~0 - ~start~0) >= 2); {20667#false} is VALID [2020-07-18 06:35:28,567 INFO L263 TraceCheckUtils]: 117: Hoare triple {20667#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {20666#true} is VALID [2020-07-18 06:35:28,567 INFO L280 TraceCheckUtils]: 118: Hoare triple {20666#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {20666#true} is VALID [2020-07-18 06:35:28,567 INFO L280 TraceCheckUtils]: 119: Hoare triple {20666#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {20666#true} is VALID [2020-07-18 06:35:28,567 INFO L280 TraceCheckUtils]: 120: Hoare triple {20666#true} ~n := #in~n; {20666#true} is VALID [2020-07-18 06:35:28,568 INFO L280 TraceCheckUtils]: 121: Hoare triple {20666#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {20666#true} is VALID [2020-07-18 06:35:28,568 INFO L280 TraceCheckUtils]: 122: Hoare triple {20666#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {20666#true} is VALID [2020-07-18 06:35:28,568 INFO L280 TraceCheckUtils]: 123: Hoare triple {20666#true} havoc #t~ret0.base, #t~ret0.offset; {20666#true} is VALID [2020-07-18 06:35:28,568 INFO L280 TraceCheckUtils]: 124: Hoare triple {20666#true} assume true; {20666#true} is VALID [2020-07-18 06:35:28,568 INFO L275 TraceCheckUtils]: 125: Hoare quadruple {20666#true} {20667#false} #227#return; {20667#false} is VALID [2020-07-18 06:35:28,569 INFO L280 TraceCheckUtils]: 126: Hoare triple {20667#false} havoc #t~ret19.base, #t~ret19.offset; {20667#false} is VALID [2020-07-18 06:35:28,569 INFO L263 TraceCheckUtils]: 127: Hoare triple {20667#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {20667#false} is VALID [2020-07-18 06:35:28,569 INFO L280 TraceCheckUtils]: 128: Hoare triple {20667#false} ~cond := #in~cond; {20667#false} is VALID [2020-07-18 06:35:28,569 INFO L280 TraceCheckUtils]: 129: Hoare triple {20667#false} assume 0 == ~cond; {20667#false} is VALID [2020-07-18 06:35:28,569 INFO L280 TraceCheckUtils]: 130: Hoare triple {20667#false} assume !false; {20667#false} is VALID [2020-07-18 06:35:28,586 INFO L134 CoverageAnalysis]: Checked inductivity of 208 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2020-07-18 06:35:28,587 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [124576692] [2020-07-18 06:35:28,589 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-18 06:35:28,590 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8] total 8 [2020-07-18 06:35:28,590 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1897906554] [2020-07-18 06:35:28,590 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 131 [2020-07-18 06:35:28,591 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:28,591 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-18 06:35:28,686 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:28,686 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-18 06:35:28,687 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:28,687 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-18 06:35:28,687 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:35:28,687 INFO L87 Difference]: Start difference. First operand 195 states and 211 transitions. Second operand 8 states. [2020-07-18 06:35:30,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:30,807 INFO L93 Difference]: Finished difference Result 454 states and 505 transitions. [2020-07-18 06:35:30,807 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2020-07-18 06:35:30,807 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 131 [2020-07-18 06:35:30,808 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:30,808 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:35:30,811 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 396 transitions. [2020-07-18 06:35:30,812 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-18 06:35:30,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 396 transitions. [2020-07-18 06:35:30,815 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 396 transitions. [2020-07-18 06:35:31,315 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 396 edges. 396 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:31,325 INFO L225 Difference]: With dead ends: 454 [2020-07-18 06:35:31,325 INFO L226 Difference]: Without dead ends: 361 [2020-07-18 06:35:31,326 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 29 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=63, Invalid=177, Unknown=0, NotChecked=0, Total=240 [2020-07-18 06:35:31,327 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 361 states. [2020-07-18 06:35:31,670 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 361 to 258. [2020-07-18 06:35:31,670 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:31,671 INFO L82 GeneralOperation]: Start isEquivalent. First operand 361 states. Second operand 258 states. [2020-07-18 06:35:31,671 INFO L74 IsIncluded]: Start isIncluded. First operand 361 states. Second operand 258 states. [2020-07-18 06:35:31,671 INFO L87 Difference]: Start difference. First operand 361 states. Second operand 258 states. [2020-07-18 06:35:31,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:31,688 INFO L93 Difference]: Finished difference Result 361 states and 401 transitions. [2020-07-18 06:35:31,688 INFO L276 IsEmpty]: Start isEmpty. Operand 361 states and 401 transitions. [2020-07-18 06:35:31,689 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:31,689 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:31,689 INFO L74 IsIncluded]: Start isIncluded. First operand 258 states. Second operand 361 states. [2020-07-18 06:35:31,690 INFO L87 Difference]: Start difference. First operand 258 states. Second operand 361 states. [2020-07-18 06:35:31,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:31,705 INFO L93 Difference]: Finished difference Result 361 states and 401 transitions. [2020-07-18 06:35:31,705 INFO L276 IsEmpty]: Start isEmpty. Operand 361 states and 401 transitions. [2020-07-18 06:35:31,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:31,709 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:31,709 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:31,709 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:31,709 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 258 states. [2020-07-18 06:35:31,715 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 284 transitions. [2020-07-18 06:35:31,716 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 284 transitions. Word has length 131 [2020-07-18 06:35:31,716 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:31,717 INFO L479 AbstractCegarLoop]: Abstraction has 258 states and 284 transitions. [2020-07-18 06:35:31,717 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-18 06:35:31,717 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 258 states and 284 transitions. [2020-07-18 06:35:32,092 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 284 edges. 284 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:32,093 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 284 transitions. [2020-07-18 06:35:32,096 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 132 [2020-07-18 06:35:32,096 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:32,096 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:35:32,096 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2020-07-18 06:35:32,097 INFO L427 AbstractCegarLoop]: === Iteration 17 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:32,097 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:32,097 INFO L82 PathProgramCache]: Analyzing trace with hash -1298582752, now seen corresponding path program 1 times [2020-07-18 06:35:32,097 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:32,098 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [687103867] [2020-07-18 06:35:32,098 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:32,118 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:32,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:32,155 INFO L280 TraceCheckUtils]: 0: Hoare triple {22867#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {22851#true} is VALID [2020-07-18 06:35:32,155 INFO L280 TraceCheckUtils]: 1: Hoare triple {22851#true} #valid := #valid[0 := 0]; {22851#true} is VALID [2020-07-18 06:35:32,155 INFO L280 TraceCheckUtils]: 2: Hoare triple {22851#true} assume 0 < #StackHeapBarrier; {22851#true} is VALID [2020-07-18 06:35:32,155 INFO L280 TraceCheckUtils]: 3: Hoare triple {22851#true} assume true; {22851#true} is VALID [2020-07-18 06:35:32,156 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {22851#true} {22851#true} #231#return; {22851#true} is VALID [2020-07-18 06:35:32,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:32,161 INFO L280 TraceCheckUtils]: 0: Hoare triple {22851#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {22851#true} is VALID [2020-07-18 06:35:32,162 INFO L280 TraceCheckUtils]: 1: Hoare triple {22851#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {22851#true} is VALID [2020-07-18 06:35:32,162 INFO L280 TraceCheckUtils]: 2: Hoare triple {22851#true} ~n := #in~n; {22851#true} is VALID [2020-07-18 06:35:32,162 INFO L280 TraceCheckUtils]: 3: Hoare triple {22851#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {22851#true} is VALID [2020-07-18 06:35:32,163 INFO L280 TraceCheckUtils]: 4: Hoare triple {22851#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {22851#true} is VALID [2020-07-18 06:35:32,163 INFO L280 TraceCheckUtils]: 5: Hoare triple {22851#true} havoc #t~ret0.base, #t~ret0.offset; {22851#true} is VALID [2020-07-18 06:35:32,163 INFO L280 TraceCheckUtils]: 6: Hoare triple {22851#true} assume true; {22851#true} is VALID [2020-07-18 06:35:32,163 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {22851#true} {22852#false} #227#return; {22852#false} is VALID [2020-07-18 06:35:32,164 INFO L263 TraceCheckUtils]: 0: Hoare triple {22851#true} call ULTIMATE.init(); {22867#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:32,165 INFO L280 TraceCheckUtils]: 1: Hoare triple {22867#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {22851#true} is VALID [2020-07-18 06:35:32,165 INFO L280 TraceCheckUtils]: 2: Hoare triple {22851#true} #valid := #valid[0 := 0]; {22851#true} is VALID [2020-07-18 06:35:32,165 INFO L280 TraceCheckUtils]: 3: Hoare triple {22851#true} assume 0 < #StackHeapBarrier; {22851#true} is VALID [2020-07-18 06:35:32,165 INFO L280 TraceCheckUtils]: 4: Hoare triple {22851#true} assume true; {22851#true} is VALID [2020-07-18 06:35:32,166 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {22851#true} {22851#true} #231#return; {22851#true} is VALID [2020-07-18 06:35:32,166 INFO L263 TraceCheckUtils]: 6: Hoare triple {22851#true} call #t~ret23 := main(); {22851#true} is VALID [2020-07-18 06:35:32,166 INFO L280 TraceCheckUtils]: 7: Hoare triple {22851#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {22851#true} is VALID [2020-07-18 06:35:32,166 INFO L280 TraceCheckUtils]: 8: Hoare triple {22851#true} ~i~1 := 0; {22851#true} is VALID [2020-07-18 06:35:32,166 INFO L280 TraceCheckUtils]: 9: Hoare triple {22851#true} assume !!(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,167 INFO L280 TraceCheckUtils]: 10: Hoare triple {22851#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {22851#true} is VALID [2020-07-18 06:35:32,167 INFO L280 TraceCheckUtils]: 11: Hoare triple {22851#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {22851#true} is VALID [2020-07-18 06:35:32,167 INFO L280 TraceCheckUtils]: 12: Hoare triple {22851#true} havoc #t~nondet21; {22851#true} is VALID [2020-07-18 06:35:32,167 INFO L280 TraceCheckUtils]: 13: Hoare triple {22851#true} #t~post20 := ~i~1; {22851#true} is VALID [2020-07-18 06:35:32,167 INFO L280 TraceCheckUtils]: 14: Hoare triple {22851#true} ~i~1 := 1 + #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,167 INFO L280 TraceCheckUtils]: 15: Hoare triple {22851#true} havoc #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,168 INFO L280 TraceCheckUtils]: 16: Hoare triple {22851#true} assume !!(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,168 INFO L280 TraceCheckUtils]: 17: Hoare triple {22851#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {22851#true} is VALID [2020-07-18 06:35:32,168 INFO L280 TraceCheckUtils]: 18: Hoare triple {22851#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {22851#true} is VALID [2020-07-18 06:35:32,168 INFO L280 TraceCheckUtils]: 19: Hoare triple {22851#true} havoc #t~nondet21; {22851#true} is VALID [2020-07-18 06:35:32,168 INFO L280 TraceCheckUtils]: 20: Hoare triple {22851#true} #t~post20 := ~i~1; {22851#true} is VALID [2020-07-18 06:35:32,169 INFO L280 TraceCheckUtils]: 21: Hoare triple {22851#true} ~i~1 := 1 + #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,169 INFO L280 TraceCheckUtils]: 22: Hoare triple {22851#true} havoc #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,169 INFO L280 TraceCheckUtils]: 23: Hoare triple {22851#true} assume !!(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,169 INFO L280 TraceCheckUtils]: 24: Hoare triple {22851#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {22851#true} is VALID [2020-07-18 06:35:32,169 INFO L280 TraceCheckUtils]: 25: Hoare triple {22851#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {22851#true} is VALID [2020-07-18 06:35:32,169 INFO L280 TraceCheckUtils]: 26: Hoare triple {22851#true} havoc #t~nondet21; {22851#true} is VALID [2020-07-18 06:35:32,170 INFO L280 TraceCheckUtils]: 27: Hoare triple {22851#true} #t~post20 := ~i~1; {22851#true} is VALID [2020-07-18 06:35:32,170 INFO L280 TraceCheckUtils]: 28: Hoare triple {22851#true} ~i~1 := 1 + #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,170 INFO L280 TraceCheckUtils]: 29: Hoare triple {22851#true} havoc #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,170 INFO L280 TraceCheckUtils]: 30: Hoare triple {22851#true} assume !!(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,170 INFO L280 TraceCheckUtils]: 31: Hoare triple {22851#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {22851#true} is VALID [2020-07-18 06:35:32,171 INFO L280 TraceCheckUtils]: 32: Hoare triple {22851#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {22851#true} is VALID [2020-07-18 06:35:32,171 INFO L280 TraceCheckUtils]: 33: Hoare triple {22851#true} havoc #t~nondet21; {22851#true} is VALID [2020-07-18 06:35:32,171 INFO L280 TraceCheckUtils]: 34: Hoare triple {22851#true} #t~post20 := ~i~1; {22851#true} is VALID [2020-07-18 06:35:32,171 INFO L280 TraceCheckUtils]: 35: Hoare triple {22851#true} ~i~1 := 1 + #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,171 INFO L280 TraceCheckUtils]: 36: Hoare triple {22851#true} havoc #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,172 INFO L280 TraceCheckUtils]: 37: Hoare triple {22851#true} assume !!(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,172 INFO L280 TraceCheckUtils]: 38: Hoare triple {22851#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {22851#true} is VALID [2020-07-18 06:35:32,172 INFO L280 TraceCheckUtils]: 39: Hoare triple {22851#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {22851#true} is VALID [2020-07-18 06:35:32,172 INFO L280 TraceCheckUtils]: 40: Hoare triple {22851#true} havoc #t~nondet21; {22851#true} is VALID [2020-07-18 06:35:32,172 INFO L280 TraceCheckUtils]: 41: Hoare triple {22851#true} #t~post20 := ~i~1; {22851#true} is VALID [2020-07-18 06:35:32,172 INFO L280 TraceCheckUtils]: 42: Hoare triple {22851#true} ~i~1 := 1 + #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,173 INFO L280 TraceCheckUtils]: 43: Hoare triple {22851#true} havoc #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,173 INFO L280 TraceCheckUtils]: 44: Hoare triple {22851#true} assume !!(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,173 INFO L280 TraceCheckUtils]: 45: Hoare triple {22851#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {22851#true} is VALID [2020-07-18 06:35:32,173 INFO L280 TraceCheckUtils]: 46: Hoare triple {22851#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {22851#true} is VALID [2020-07-18 06:35:32,173 INFO L280 TraceCheckUtils]: 47: Hoare triple {22851#true} havoc #t~nondet21; {22851#true} is VALID [2020-07-18 06:35:32,174 INFO L280 TraceCheckUtils]: 48: Hoare triple {22851#true} #t~post20 := ~i~1; {22851#true} is VALID [2020-07-18 06:35:32,174 INFO L280 TraceCheckUtils]: 49: Hoare triple {22851#true} ~i~1 := 1 + #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,174 INFO L280 TraceCheckUtils]: 50: Hoare triple {22851#true} havoc #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,174 INFO L280 TraceCheckUtils]: 51: Hoare triple {22851#true} assume !!(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,174 INFO L280 TraceCheckUtils]: 52: Hoare triple {22851#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {22851#true} is VALID [2020-07-18 06:35:32,175 INFO L280 TraceCheckUtils]: 53: Hoare triple {22851#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {22851#true} is VALID [2020-07-18 06:35:32,175 INFO L280 TraceCheckUtils]: 54: Hoare triple {22851#true} havoc #t~nondet21; {22851#true} is VALID [2020-07-18 06:35:32,175 INFO L280 TraceCheckUtils]: 55: Hoare triple {22851#true} #t~post20 := ~i~1; {22851#true} is VALID [2020-07-18 06:35:32,175 INFO L280 TraceCheckUtils]: 56: Hoare triple {22851#true} ~i~1 := 1 + #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,176 INFO L280 TraceCheckUtils]: 57: Hoare triple {22851#true} havoc #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,176 INFO L280 TraceCheckUtils]: 58: Hoare triple {22851#true} assume !!(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,176 INFO L280 TraceCheckUtils]: 59: Hoare triple {22851#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {22851#true} is VALID [2020-07-18 06:35:32,176 INFO L280 TraceCheckUtils]: 60: Hoare triple {22851#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {22851#true} is VALID [2020-07-18 06:35:32,176 INFO L280 TraceCheckUtils]: 61: Hoare triple {22851#true} havoc #t~nondet21; {22851#true} is VALID [2020-07-18 06:35:32,177 INFO L280 TraceCheckUtils]: 62: Hoare triple {22851#true} #t~post20 := ~i~1; {22851#true} is VALID [2020-07-18 06:35:32,177 INFO L280 TraceCheckUtils]: 63: Hoare triple {22851#true} ~i~1 := 1 + #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,177 INFO L280 TraceCheckUtils]: 64: Hoare triple {22851#true} havoc #t~post20; {22851#true} is VALID [2020-07-18 06:35:32,177 INFO L280 TraceCheckUtils]: 65: Hoare triple {22851#true} assume !(~i~1 < 8); {22851#true} is VALID [2020-07-18 06:35:32,177 INFO L280 TraceCheckUtils]: 66: Hoare triple {22851#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {22851#true} is VALID [2020-07-18 06:35:32,177 INFO L263 TraceCheckUtils]: 67: Hoare triple {22851#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {22851#true} is VALID [2020-07-18 06:35:32,178 INFO L280 TraceCheckUtils]: 68: Hoare triple {22851#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {22851#true} is VALID [2020-07-18 06:35:32,178 INFO L280 TraceCheckUtils]: 69: Hoare triple {22851#true} ~start~0 := 0; {22851#true} is VALID [2020-07-18 06:35:32,178 INFO L280 TraceCheckUtils]: 70: Hoare triple {22851#true} ~i~0 := -1; {22851#true} is VALID [2020-07-18 06:35:32,178 INFO L280 TraceCheckUtils]: 71: Hoare triple {22851#true} ~j~0 := -1; {22851#true} is VALID [2020-07-18 06:35:32,179 INFO L280 TraceCheckUtils]: 72: Hoare triple {22851#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {22851#true} is VALID [2020-07-18 06:35:32,179 INFO L280 TraceCheckUtils]: 73: Hoare triple {22851#true} assume !(~str.base == 0 && ~str.offset == 0); {22851#true} is VALID [2020-07-18 06:35:32,179 INFO L280 TraceCheckUtils]: 74: Hoare triple {22851#true} #t~post2 := ~i~0; {22851#true} is VALID [2020-07-18 06:35:32,179 INFO L280 TraceCheckUtils]: 75: Hoare triple {22851#true} ~i~0 := 1 + #t~post2; {22851#true} is VALID [2020-07-18 06:35:32,179 INFO L280 TraceCheckUtils]: 76: Hoare triple {22851#true} havoc #t~post2; {22851#true} is VALID [2020-07-18 06:35:32,179 INFO L280 TraceCheckUtils]: 77: Hoare triple {22851#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {22851#true} is VALID [2020-07-18 06:35:32,180 INFO L280 TraceCheckUtils]: 78: Hoare triple {22851#true} #t~switch4 := 0 == #t~mem3; {22851#true} is VALID [2020-07-18 06:35:32,180 INFO L280 TraceCheckUtils]: 79: Hoare triple {22851#true} assume #t~switch4; {22851#true} is VALID [2020-07-18 06:35:32,180 INFO L280 TraceCheckUtils]: 80: Hoare triple {22851#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {22851#true} is VALID [2020-07-18 06:35:32,180 INFO L280 TraceCheckUtils]: 81: Hoare triple {22851#true} #t~short7 := 32 == #t~mem5; {22851#true} is VALID [2020-07-18 06:35:32,180 INFO L280 TraceCheckUtils]: 82: Hoare triple {22851#true} assume !#t~short7; {22851#true} is VALID [2020-07-18 06:35:32,181 INFO L280 TraceCheckUtils]: 83: Hoare triple {22851#true} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-4 {22851#true} is VALID [2020-07-18 06:35:32,181 INFO L280 TraceCheckUtils]: 84: Hoare triple {22851#true} #t~short7 := 9 == #t~mem6; {22851#true} is VALID [2020-07-18 06:35:32,181 INFO L280 TraceCheckUtils]: 85: Hoare triple {22851#true} assume !#t~short7; {22851#true} is VALID [2020-07-18 06:35:32,181 INFO L280 TraceCheckUtils]: 86: Hoare triple {22851#true} havoc #t~short7; {22851#true} is VALID [2020-07-18 06:35:32,181 INFO L280 TraceCheckUtils]: 87: Hoare triple {22851#true} havoc #t~mem6; {22851#true} is VALID [2020-07-18 06:35:32,182 INFO L280 TraceCheckUtils]: 88: Hoare triple {22851#true} havoc #t~mem5; {22851#true} is VALID [2020-07-18 06:35:32,182 INFO L280 TraceCheckUtils]: 89: Hoare triple {22851#true} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {22851#true} is VALID [2020-07-18 06:35:32,182 INFO L280 TraceCheckUtils]: 90: Hoare triple {22851#true} assume !(34 == #t~mem9); {22851#true} is VALID [2020-07-18 06:35:32,182 INFO L280 TraceCheckUtils]: 91: Hoare triple {22851#true} havoc #t~mem9; {22851#true} is VALID [2020-07-18 06:35:32,182 INFO L280 TraceCheckUtils]: 92: Hoare triple {22851#true} ~j~0 := ~i~0 - 1; {22851#true} is VALID [2020-07-18 06:35:32,183 INFO L280 TraceCheckUtils]: 93: Hoare triple {22851#true} #t~short14 := 0 < ~j~0; {22851#true} is VALID [2020-07-18 06:35:32,185 INFO L280 TraceCheckUtils]: 94: Hoare triple {22851#true} assume !#t~short14; {22858#(not |parse_expression_list_#t~short14|)} is VALID [2020-07-18 06:35:32,186 INFO L280 TraceCheckUtils]: 95: Hoare triple {22858#(not |parse_expression_list_#t~short14|)} assume !!#t~short14; {22852#false} is VALID [2020-07-18 06:35:32,187 INFO L280 TraceCheckUtils]: 96: Hoare triple {22852#false} havoc #t~short14; {22852#false} is VALID [2020-07-18 06:35:32,187 INFO L280 TraceCheckUtils]: 97: Hoare triple {22852#false} havoc #t~mem11; {22852#false} is VALID [2020-07-18 06:35:32,187 INFO L280 TraceCheckUtils]: 98: Hoare triple {22852#false} havoc #t~mem12; {22852#false} is VALID [2020-07-18 06:35:32,187 INFO L280 TraceCheckUtils]: 99: Hoare triple {22852#false} havoc #t~short13; {22852#false} is VALID [2020-07-18 06:35:32,188 INFO L280 TraceCheckUtils]: 100: Hoare triple {22852#false} #t~post15 := ~j~0; {22852#false} is VALID [2020-07-18 06:35:32,188 INFO L280 TraceCheckUtils]: 101: Hoare triple {22852#false} ~j~0 := #t~post15 - 1; {22852#false} is VALID [2020-07-18 06:35:32,188 INFO L280 TraceCheckUtils]: 102: Hoare triple {22852#false} havoc #t~post15; {22852#false} is VALID [2020-07-18 06:35:32,188 INFO L280 TraceCheckUtils]: 103: Hoare triple {22852#false} #t~short14 := 0 < ~j~0; {22852#false} is VALID [2020-07-18 06:35:32,188 INFO L280 TraceCheckUtils]: 104: Hoare triple {22852#false} assume !#t~short14; {22852#false} is VALID [2020-07-18 06:35:32,188 INFO L280 TraceCheckUtils]: 105: Hoare triple {22852#false} assume !#t~short14; {22852#false} is VALID [2020-07-18 06:35:32,189 INFO L280 TraceCheckUtils]: 106: Hoare triple {22852#false} havoc #t~short14; {22852#false} is VALID [2020-07-18 06:35:32,189 INFO L280 TraceCheckUtils]: 107: Hoare triple {22852#false} havoc #t~mem11; {22852#false} is VALID [2020-07-18 06:35:32,189 INFO L280 TraceCheckUtils]: 108: Hoare triple {22852#false} havoc #t~mem12; {22852#false} is VALID [2020-07-18 06:35:32,189 INFO L280 TraceCheckUtils]: 109: Hoare triple {22852#false} havoc #t~short13; {22852#false} is VALID [2020-07-18 06:35:32,189 INFO L280 TraceCheckUtils]: 110: Hoare triple {22852#false} #t~short17 := 0 < ~j~0; {22852#false} is VALID [2020-07-18 06:35:32,190 INFO L280 TraceCheckUtils]: 111: Hoare triple {22852#false} assume !#t~short17; {22852#false} is VALID [2020-07-18 06:35:32,190 INFO L280 TraceCheckUtils]: 112: Hoare triple {22852#false} assume !#t~short17; {22852#false} is VALID [2020-07-18 06:35:32,190 INFO L280 TraceCheckUtils]: 113: Hoare triple {22852#false} havoc #t~mem16; {22852#false} is VALID [2020-07-18 06:35:32,190 INFO L280 TraceCheckUtils]: 114: Hoare triple {22852#false} havoc #t~short17; {22852#false} is VALID [2020-07-18 06:35:32,190 INFO L280 TraceCheckUtils]: 115: Hoare triple {22852#false} assume ~start~0 <= ~j~0; {22852#false} is VALID [2020-07-18 06:35:32,190 INFO L280 TraceCheckUtils]: 116: Hoare triple {22852#false} assume !(1 + (~j~0 - ~start~0) >= 2); {22852#false} is VALID [2020-07-18 06:35:32,191 INFO L263 TraceCheckUtils]: 117: Hoare triple {22852#false} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {22851#true} is VALID [2020-07-18 06:35:32,191 INFO L280 TraceCheckUtils]: 118: Hoare triple {22851#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {22851#true} is VALID [2020-07-18 06:35:32,191 INFO L280 TraceCheckUtils]: 119: Hoare triple {22851#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {22851#true} is VALID [2020-07-18 06:35:32,191 INFO L280 TraceCheckUtils]: 120: Hoare triple {22851#true} ~n := #in~n; {22851#true} is VALID [2020-07-18 06:35:32,191 INFO L280 TraceCheckUtils]: 121: Hoare triple {22851#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {22851#true} is VALID [2020-07-18 06:35:32,192 INFO L280 TraceCheckUtils]: 122: Hoare triple {22851#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {22851#true} is VALID [2020-07-18 06:35:32,192 INFO L280 TraceCheckUtils]: 123: Hoare triple {22851#true} havoc #t~ret0.base, #t~ret0.offset; {22851#true} is VALID [2020-07-18 06:35:32,192 INFO L280 TraceCheckUtils]: 124: Hoare triple {22851#true} assume true; {22851#true} is VALID [2020-07-18 06:35:32,192 INFO L275 TraceCheckUtils]: 125: Hoare quadruple {22851#true} {22852#false} #227#return; {22852#false} is VALID [2020-07-18 06:35:32,192 INFO L280 TraceCheckUtils]: 126: Hoare triple {22852#false} havoc #t~ret19.base, #t~ret19.offset; {22852#false} is VALID [2020-07-18 06:35:32,192 INFO L263 TraceCheckUtils]: 127: Hoare triple {22852#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {22852#false} is VALID [2020-07-18 06:35:32,193 INFO L280 TraceCheckUtils]: 128: Hoare triple {22852#false} ~cond := #in~cond; {22852#false} is VALID [2020-07-18 06:35:32,193 INFO L280 TraceCheckUtils]: 129: Hoare triple {22852#false} assume 0 == ~cond; {22852#false} is VALID [2020-07-18 06:35:32,193 INFO L280 TraceCheckUtils]: 130: Hoare triple {22852#false} assume !false; {22852#false} is VALID [2020-07-18 06:35:32,202 INFO L134 CoverageAnalysis]: Checked inductivity of 207 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 204 trivial. 0 not checked. [2020-07-18 06:35:32,202 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [687103867] [2020-07-18 06:35:32,203 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:35:32,203 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-18 06:35:32,203 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1843140283] [2020-07-18 06:35:32,204 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 131 [2020-07-18 06:35:32,205 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:32,205 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-18 06:35:32,287 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:32,287 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-18 06:35:32,287 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:32,288 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-18 06:35:32,288 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:35:32,288 INFO L87 Difference]: Start difference. First operand 258 states and 284 transitions. Second operand 4 states. [2020-07-18 06:35:33,078 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:33,079 INFO L93 Difference]: Finished difference Result 375 states and 415 transitions. [2020-07-18 06:35:33,079 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-18 06:35:33,079 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 131 [2020-07-18 06:35:33,080 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:33,080 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:35:33,083 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 219 transitions. [2020-07-18 06:35:33,083 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-18 06:35:33,086 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 219 transitions. [2020-07-18 06:35:33,086 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 219 transitions. [2020-07-18 06:35:33,341 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 219 edges. 219 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:33,350 INFO L225 Difference]: With dead ends: 375 [2020-07-18 06:35:33,350 INFO L226 Difference]: Without dead ends: 259 [2020-07-18 06:35:33,352 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-18 06:35:33,353 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 259 states. [2020-07-18 06:35:33,687 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 259 to 259. [2020-07-18 06:35:33,688 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:33,688 INFO L82 GeneralOperation]: Start isEquivalent. First operand 259 states. Second operand 259 states. [2020-07-18 06:35:33,688 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand 259 states. [2020-07-18 06:35:33,688 INFO L87 Difference]: Start difference. First operand 259 states. Second operand 259 states. [2020-07-18 06:35:33,696 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:33,696 INFO L93 Difference]: Finished difference Result 259 states and 283 transitions. [2020-07-18 06:35:33,697 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 283 transitions. [2020-07-18 06:35:33,698 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:33,698 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:33,698 INFO L74 IsIncluded]: Start isIncluded. First operand 259 states. Second operand 259 states. [2020-07-18 06:35:33,698 INFO L87 Difference]: Start difference. First operand 259 states. Second operand 259 states. [2020-07-18 06:35:33,705 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:33,706 INFO L93 Difference]: Finished difference Result 259 states and 283 transitions. [2020-07-18 06:35:33,706 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 283 transitions. [2020-07-18 06:35:33,706 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:33,707 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:33,707 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:33,707 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:33,707 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 259 states. [2020-07-18 06:35:33,718 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 259 states to 259 states and 283 transitions. [2020-07-18 06:35:33,719 INFO L78 Accepts]: Start accepts. Automaton has 259 states and 283 transitions. Word has length 131 [2020-07-18 06:35:33,719 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:33,719 INFO L479 AbstractCegarLoop]: Abstraction has 259 states and 283 transitions. [2020-07-18 06:35:33,720 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-18 06:35:33,720 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 259 states and 283 transitions. [2020-07-18 06:35:34,123 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 283 edges. 283 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:34,124 INFO L276 IsEmpty]: Start isEmpty. Operand 259 states and 283 transitions. [2020-07-18 06:35:34,125 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 133 [2020-07-18 06:35:34,125 INFO L414 BasicCegarLoop]: Found error trace [2020-07-18 06:35:34,125 INFO L422 BasicCegarLoop]: trace histogram [8, 8, 8, 8, 8, 8, 8, 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, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-18 06:35:34,126 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2020-07-18 06:35:34,126 INFO L427 AbstractCegarLoop]: === Iteration 18 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-18 06:35:34,126 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-18 06:35:34,126 INFO L82 PathProgramCache]: Analyzing trace with hash -729212679, now seen corresponding path program 1 times [2020-07-18 06:35:34,127 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-18 06:35:34,127 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [871106157] [2020-07-18 06:35:34,127 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-18 06:35:34,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:34,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:34,228 INFO L280 TraceCheckUtils]: 0: Hoare triple {24674#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {24656#true} is VALID [2020-07-18 06:35:34,228 INFO L280 TraceCheckUtils]: 1: Hoare triple {24656#true} #valid := #valid[0 := 0]; {24656#true} is VALID [2020-07-18 06:35:34,229 INFO L280 TraceCheckUtils]: 2: Hoare triple {24656#true} assume 0 < #StackHeapBarrier; {24656#true} is VALID [2020-07-18 06:35:34,229 INFO L280 TraceCheckUtils]: 3: Hoare triple {24656#true} assume true; {24656#true} is VALID [2020-07-18 06:35:34,229 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {24656#true} {24656#true} #231#return; {24656#true} is VALID [2020-07-18 06:35:34,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-18 06:35:34,239 INFO L280 TraceCheckUtils]: 0: Hoare triple {24656#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {24656#true} is VALID [2020-07-18 06:35:34,240 INFO L280 TraceCheckUtils]: 1: Hoare triple {24656#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {24656#true} is VALID [2020-07-18 06:35:34,240 INFO L280 TraceCheckUtils]: 2: Hoare triple {24656#true} ~n := #in~n; {24656#true} is VALID [2020-07-18 06:35:34,241 INFO L280 TraceCheckUtils]: 3: Hoare triple {24656#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {24656#true} is VALID [2020-07-18 06:35:34,241 INFO L280 TraceCheckUtils]: 4: Hoare triple {24656#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {24656#true} is VALID [2020-07-18 06:35:34,241 INFO L280 TraceCheckUtils]: 5: Hoare triple {24656#true} havoc #t~ret0.base, #t~ret0.offset; {24656#true} is VALID [2020-07-18 06:35:34,241 INFO L280 TraceCheckUtils]: 6: Hoare triple {24656#true} assume true; {24656#true} is VALID [2020-07-18 06:35:34,243 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {24656#true} {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} #227#return; {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} is VALID [2020-07-18 06:35:34,245 INFO L263 TraceCheckUtils]: 0: Hoare triple {24656#true} call ULTIMATE.init(); {24674#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-18 06:35:34,245 INFO L280 TraceCheckUtils]: 1: Hoare triple {24674#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {24656#true} is VALID [2020-07-18 06:35:34,246 INFO L280 TraceCheckUtils]: 2: Hoare triple {24656#true} #valid := #valid[0 := 0]; {24656#true} is VALID [2020-07-18 06:35:34,246 INFO L280 TraceCheckUtils]: 3: Hoare triple {24656#true} assume 0 < #StackHeapBarrier; {24656#true} is VALID [2020-07-18 06:35:34,246 INFO L280 TraceCheckUtils]: 4: Hoare triple {24656#true} assume true; {24656#true} is VALID [2020-07-18 06:35:34,246 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {24656#true} {24656#true} #231#return; {24656#true} is VALID [2020-07-18 06:35:34,247 INFO L263 TraceCheckUtils]: 6: Hoare triple {24656#true} call #t~ret23 := main(); {24656#true} is VALID [2020-07-18 06:35:34,247 INFO L280 TraceCheckUtils]: 7: Hoare triple {24656#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {24656#true} is VALID [2020-07-18 06:35:34,247 INFO L280 TraceCheckUtils]: 8: Hoare triple {24656#true} ~i~1 := 0; {24656#true} is VALID [2020-07-18 06:35:34,247 INFO L280 TraceCheckUtils]: 9: Hoare triple {24656#true} assume !!(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,247 INFO L280 TraceCheckUtils]: 10: Hoare triple {24656#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {24656#true} is VALID [2020-07-18 06:35:34,248 INFO L280 TraceCheckUtils]: 11: Hoare triple {24656#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {24656#true} is VALID [2020-07-18 06:35:34,248 INFO L280 TraceCheckUtils]: 12: Hoare triple {24656#true} havoc #t~nondet21; {24656#true} is VALID [2020-07-18 06:35:34,248 INFO L280 TraceCheckUtils]: 13: Hoare triple {24656#true} #t~post20 := ~i~1; {24656#true} is VALID [2020-07-18 06:35:34,248 INFO L280 TraceCheckUtils]: 14: Hoare triple {24656#true} ~i~1 := 1 + #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,248 INFO L280 TraceCheckUtils]: 15: Hoare triple {24656#true} havoc #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,249 INFO L280 TraceCheckUtils]: 16: Hoare triple {24656#true} assume !!(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,249 INFO L280 TraceCheckUtils]: 17: Hoare triple {24656#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {24656#true} is VALID [2020-07-18 06:35:34,249 INFO L280 TraceCheckUtils]: 18: Hoare triple {24656#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {24656#true} is VALID [2020-07-18 06:35:34,249 INFO L280 TraceCheckUtils]: 19: Hoare triple {24656#true} havoc #t~nondet21; {24656#true} is VALID [2020-07-18 06:35:34,249 INFO L280 TraceCheckUtils]: 20: Hoare triple {24656#true} #t~post20 := ~i~1; {24656#true} is VALID [2020-07-18 06:35:34,249 INFO L280 TraceCheckUtils]: 21: Hoare triple {24656#true} ~i~1 := 1 + #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,250 INFO L280 TraceCheckUtils]: 22: Hoare triple {24656#true} havoc #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,250 INFO L280 TraceCheckUtils]: 23: Hoare triple {24656#true} assume !!(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,250 INFO L280 TraceCheckUtils]: 24: Hoare triple {24656#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {24656#true} is VALID [2020-07-18 06:35:34,250 INFO L280 TraceCheckUtils]: 25: Hoare triple {24656#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {24656#true} is VALID [2020-07-18 06:35:34,250 INFO L280 TraceCheckUtils]: 26: Hoare triple {24656#true} havoc #t~nondet21; {24656#true} is VALID [2020-07-18 06:35:34,251 INFO L280 TraceCheckUtils]: 27: Hoare triple {24656#true} #t~post20 := ~i~1; {24656#true} is VALID [2020-07-18 06:35:34,251 INFO L280 TraceCheckUtils]: 28: Hoare triple {24656#true} ~i~1 := 1 + #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,251 INFO L280 TraceCheckUtils]: 29: Hoare triple {24656#true} havoc #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,251 INFO L280 TraceCheckUtils]: 30: Hoare triple {24656#true} assume !!(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,251 INFO L280 TraceCheckUtils]: 31: Hoare triple {24656#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {24656#true} is VALID [2020-07-18 06:35:34,252 INFO L280 TraceCheckUtils]: 32: Hoare triple {24656#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {24656#true} is VALID [2020-07-18 06:35:34,252 INFO L280 TraceCheckUtils]: 33: Hoare triple {24656#true} havoc #t~nondet21; {24656#true} is VALID [2020-07-18 06:35:34,252 INFO L280 TraceCheckUtils]: 34: Hoare triple {24656#true} #t~post20 := ~i~1; {24656#true} is VALID [2020-07-18 06:35:34,252 INFO L280 TraceCheckUtils]: 35: Hoare triple {24656#true} ~i~1 := 1 + #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,252 INFO L280 TraceCheckUtils]: 36: Hoare triple {24656#true} havoc #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,253 INFO L280 TraceCheckUtils]: 37: Hoare triple {24656#true} assume !!(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,253 INFO L280 TraceCheckUtils]: 38: Hoare triple {24656#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {24656#true} is VALID [2020-07-18 06:35:34,253 INFO L280 TraceCheckUtils]: 39: Hoare triple {24656#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {24656#true} is VALID [2020-07-18 06:35:34,253 INFO L280 TraceCheckUtils]: 40: Hoare triple {24656#true} havoc #t~nondet21; {24656#true} is VALID [2020-07-18 06:35:34,253 INFO L280 TraceCheckUtils]: 41: Hoare triple {24656#true} #t~post20 := ~i~1; {24656#true} is VALID [2020-07-18 06:35:34,254 INFO L280 TraceCheckUtils]: 42: Hoare triple {24656#true} ~i~1 := 1 + #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,254 INFO L280 TraceCheckUtils]: 43: Hoare triple {24656#true} havoc #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,254 INFO L280 TraceCheckUtils]: 44: Hoare triple {24656#true} assume !!(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,254 INFO L280 TraceCheckUtils]: 45: Hoare triple {24656#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {24656#true} is VALID [2020-07-18 06:35:34,254 INFO L280 TraceCheckUtils]: 46: Hoare triple {24656#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {24656#true} is VALID [2020-07-18 06:35:34,255 INFO L280 TraceCheckUtils]: 47: Hoare triple {24656#true} havoc #t~nondet21; {24656#true} is VALID [2020-07-18 06:35:34,255 INFO L280 TraceCheckUtils]: 48: Hoare triple {24656#true} #t~post20 := ~i~1; {24656#true} is VALID [2020-07-18 06:35:34,255 INFO L280 TraceCheckUtils]: 49: Hoare triple {24656#true} ~i~1 := 1 + #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,255 INFO L280 TraceCheckUtils]: 50: Hoare triple {24656#true} havoc #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,255 INFO L280 TraceCheckUtils]: 51: Hoare triple {24656#true} assume !!(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,256 INFO L280 TraceCheckUtils]: 52: Hoare triple {24656#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {24656#true} is VALID [2020-07-18 06:35:34,256 INFO L280 TraceCheckUtils]: 53: Hoare triple {24656#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {24656#true} is VALID [2020-07-18 06:35:34,256 INFO L280 TraceCheckUtils]: 54: Hoare triple {24656#true} havoc #t~nondet21; {24656#true} is VALID [2020-07-18 06:35:34,256 INFO L280 TraceCheckUtils]: 55: Hoare triple {24656#true} #t~post20 := ~i~1; {24656#true} is VALID [2020-07-18 06:35:34,256 INFO L280 TraceCheckUtils]: 56: Hoare triple {24656#true} ~i~1 := 1 + #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,257 INFO L280 TraceCheckUtils]: 57: Hoare triple {24656#true} havoc #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,257 INFO L280 TraceCheckUtils]: 58: Hoare triple {24656#true} assume !!(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,258 INFO L280 TraceCheckUtils]: 59: Hoare triple {24656#true} assume -128 <= #t~nondet21 && #t~nondet21 <= 127; {24656#true} is VALID [2020-07-18 06:35:34,258 INFO L280 TraceCheckUtils]: 60: Hoare triple {24656#true} SUMMARY for call write~int(#t~nondet21, ~#A~0.base, ~#A~0.offset + ~i~1, 1); srcloc: L80-1 {24656#true} is VALID [2020-07-18 06:35:34,258 INFO L280 TraceCheckUtils]: 61: Hoare triple {24656#true} havoc #t~nondet21; {24656#true} is VALID [2020-07-18 06:35:34,258 INFO L280 TraceCheckUtils]: 62: Hoare triple {24656#true} #t~post20 := ~i~1; {24656#true} is VALID [2020-07-18 06:35:34,259 INFO L280 TraceCheckUtils]: 63: Hoare triple {24656#true} ~i~1 := 1 + #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,259 INFO L280 TraceCheckUtils]: 64: Hoare triple {24656#true} havoc #t~post20; {24656#true} is VALID [2020-07-18 06:35:34,259 INFO L280 TraceCheckUtils]: 65: Hoare triple {24656#true} assume !(~i~1 < 8); {24656#true} is VALID [2020-07-18 06:35:34,259 INFO L280 TraceCheckUtils]: 66: Hoare triple {24656#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L79-6 {24656#true} is VALID [2020-07-18 06:35:34,259 INFO L263 TraceCheckUtils]: 67: Hoare triple {24656#true} call #t~ret22 := parse_expression_list(~#A~0.base, ~#A~0.offset); {24656#true} is VALID [2020-07-18 06:35:34,260 INFO L280 TraceCheckUtils]: 68: Hoare triple {24656#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {24656#true} is VALID [2020-07-18 06:35:34,260 INFO L280 TraceCheckUtils]: 69: Hoare triple {24656#true} ~start~0 := 0; {24656#true} is VALID [2020-07-18 06:35:34,260 INFO L280 TraceCheckUtils]: 70: Hoare triple {24656#true} ~i~0 := -1; {24656#true} is VALID [2020-07-18 06:35:34,260 INFO L280 TraceCheckUtils]: 71: Hoare triple {24656#true} ~j~0 := -1; {24656#true} is VALID [2020-07-18 06:35:34,260 INFO L280 TraceCheckUtils]: 72: Hoare triple {24656#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L50 {24656#true} is VALID [2020-07-18 06:35:34,261 INFO L280 TraceCheckUtils]: 73: Hoare triple {24656#true} assume !(~str.base == 0 && ~str.offset == 0); {24656#true} is VALID [2020-07-18 06:35:34,261 INFO L280 TraceCheckUtils]: 74: Hoare triple {24656#true} #t~post2 := ~i~0; {24656#true} is VALID [2020-07-18 06:35:34,261 INFO L280 TraceCheckUtils]: 75: Hoare triple {24656#true} ~i~0 := 1 + #t~post2; {24656#true} is VALID [2020-07-18 06:35:34,261 INFO L280 TraceCheckUtils]: 76: Hoare triple {24656#true} havoc #t~post2; {24656#true} is VALID [2020-07-18 06:35:34,261 INFO L280 TraceCheckUtils]: 77: Hoare triple {24656#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {24656#true} is VALID [2020-07-18 06:35:34,262 INFO L280 TraceCheckUtils]: 78: Hoare triple {24656#true} #t~switch4 := 0 == #t~mem3; {24656#true} is VALID [2020-07-18 06:35:34,262 INFO L280 TraceCheckUtils]: 79: Hoare triple {24656#true} assume !#t~switch4; {24656#true} is VALID [2020-07-18 06:35:34,262 INFO L280 TraceCheckUtils]: 80: Hoare triple {24656#true} havoc #t~switch4; {24656#true} is VALID [2020-07-18 06:35:34,262 INFO L280 TraceCheckUtils]: 81: Hoare triple {24656#true} havoc #t~mem3; {24656#true} is VALID [2020-07-18 06:35:34,263 INFO L280 TraceCheckUtils]: 82: Hoare triple {24656#true} SUMMARY for call #t~mem1 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L52-1 {24656#true} is VALID [2020-07-18 06:35:34,263 INFO L280 TraceCheckUtils]: 83: Hoare triple {24656#true} assume !!(0 != #t~mem1); {24656#true} is VALID [2020-07-18 06:35:34,263 INFO L280 TraceCheckUtils]: 84: Hoare triple {24656#true} havoc #t~mem1; {24656#true} is VALID [2020-07-18 06:35:34,263 INFO L280 TraceCheckUtils]: 85: Hoare triple {24656#true} #t~post2 := ~i~0; {24656#true} is VALID [2020-07-18 06:35:34,263 INFO L280 TraceCheckUtils]: 86: Hoare triple {24656#true} ~i~0 := 1 + #t~post2; {24656#true} is VALID [2020-07-18 06:35:34,264 INFO L280 TraceCheckUtils]: 87: Hoare triple {24656#true} havoc #t~post2; {24656#true} is VALID [2020-07-18 06:35:34,264 INFO L280 TraceCheckUtils]: 88: Hoare triple {24656#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L54 {24656#true} is VALID [2020-07-18 06:35:34,264 INFO L280 TraceCheckUtils]: 89: Hoare triple {24656#true} #t~switch4 := 0 == #t~mem3; {24656#true} is VALID [2020-07-18 06:35:34,264 INFO L280 TraceCheckUtils]: 90: Hoare triple {24656#true} assume #t~switch4; {24656#true} is VALID [2020-07-18 06:35:34,264 INFO L280 TraceCheckUtils]: 91: Hoare triple {24656#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-17 {24656#true} is VALID [2020-07-18 06:35:34,265 INFO L280 TraceCheckUtils]: 92: Hoare triple {24656#true} #t~short7 := 32 == #t~mem5; {24656#true} is VALID [2020-07-18 06:35:34,265 INFO L280 TraceCheckUtils]: 93: Hoare triple {24656#true} assume !#t~short7; {24656#true} is VALID [2020-07-18 06:35:34,265 INFO L280 TraceCheckUtils]: 94: Hoare triple {24656#true} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-4 {24656#true} is VALID [2020-07-18 06:35:34,266 INFO L280 TraceCheckUtils]: 95: Hoare triple {24656#true} #t~short7 := 9 == #t~mem6; {24656#true} is VALID [2020-07-18 06:35:34,266 INFO L280 TraceCheckUtils]: 96: Hoare triple {24656#true} assume !#t~short7; {24656#true} is VALID [2020-07-18 06:35:34,266 INFO L280 TraceCheckUtils]: 97: Hoare triple {24656#true} havoc #t~short7; {24656#true} is VALID [2020-07-18 06:35:34,266 INFO L280 TraceCheckUtils]: 98: Hoare triple {24656#true} havoc #t~mem6; {24656#true} is VALID [2020-07-18 06:35:34,267 INFO L280 TraceCheckUtils]: 99: Hoare triple {24656#true} havoc #t~mem5; {24656#true} is VALID [2020-07-18 06:35:34,267 INFO L280 TraceCheckUtils]: 100: Hoare triple {24656#true} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L56-18 {24656#true} is VALID [2020-07-18 06:35:34,267 INFO L280 TraceCheckUtils]: 101: Hoare triple {24656#true} assume !(34 == #t~mem9); {24656#true} is VALID [2020-07-18 06:35:34,267 INFO L280 TraceCheckUtils]: 102: Hoare triple {24656#true} havoc #t~mem9; {24656#true} is VALID [2020-07-18 06:35:34,267 INFO L280 TraceCheckUtils]: 103: Hoare triple {24656#true} ~j~0 := ~i~0 - 1; {24656#true} is VALID [2020-07-18 06:35:34,268 INFO L280 TraceCheckUtils]: 104: Hoare triple {24656#true} #t~short14 := 0 < ~j~0; {24656#true} is VALID [2020-07-18 06:35:34,268 INFO L280 TraceCheckUtils]: 105: Hoare triple {24656#true} assume !#t~short14; {24656#true} is VALID [2020-07-18 06:35:34,268 INFO L280 TraceCheckUtils]: 106: Hoare triple {24656#true} assume !#t~short14; {24656#true} is VALID [2020-07-18 06:35:34,269 INFO L280 TraceCheckUtils]: 107: Hoare triple {24656#true} havoc #t~short14; {24656#true} is VALID [2020-07-18 06:35:34,269 INFO L280 TraceCheckUtils]: 108: Hoare triple {24656#true} havoc #t~mem11; {24656#true} is VALID [2020-07-18 06:35:34,269 INFO L280 TraceCheckUtils]: 109: Hoare triple {24656#true} havoc #t~mem12; {24656#true} is VALID [2020-07-18 06:35:34,269 INFO L280 TraceCheckUtils]: 110: Hoare triple {24656#true} havoc #t~short13; {24656#true} is VALID [2020-07-18 06:35:34,270 INFO L280 TraceCheckUtils]: 111: Hoare triple {24656#true} #t~short17 := 0 < ~j~0; {24656#true} is VALID [2020-07-18 06:35:34,270 INFO L280 TraceCheckUtils]: 112: Hoare triple {24656#true} assume !#t~short17; {24656#true} is VALID [2020-07-18 06:35:34,270 INFO L280 TraceCheckUtils]: 113: Hoare triple {24656#true} assume !#t~short17; {24656#true} is VALID [2020-07-18 06:35:34,270 INFO L280 TraceCheckUtils]: 114: Hoare triple {24656#true} havoc #t~mem16; {24656#true} is VALID [2020-07-18 06:35:34,271 INFO L280 TraceCheckUtils]: 115: Hoare triple {24656#true} havoc #t~short17; {24656#true} is VALID [2020-07-18 06:35:34,271 INFO L280 TraceCheckUtils]: 116: Hoare triple {24656#true} assume ~start~0 <= ~j~0; {24656#true} is VALID [2020-07-18 06:35:34,272 INFO L280 TraceCheckUtils]: 117: Hoare triple {24656#true} assume !(1 + (~j~0 - ~start~0) >= 2); {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} is VALID [2020-07-18 06:35:34,272 INFO L263 TraceCheckUtils]: 118: Hoare triple {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} call #t~ret19.base, #t~ret19.offset := r_strncpy(~#str2~0.base, ~#str2~0.offset, ~str.base, ~str.offset + ~start~0, 1 + (~j~0 - ~start~0)); {24656#true} is VALID [2020-07-18 06:35:34,273 INFO L280 TraceCheckUtils]: 119: Hoare triple {24656#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {24656#true} is VALID [2020-07-18 06:35:34,273 INFO L280 TraceCheckUtils]: 120: Hoare triple {24656#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {24656#true} is VALID [2020-07-18 06:35:34,273 INFO L280 TraceCheckUtils]: 121: Hoare triple {24656#true} ~n := #in~n; {24656#true} is VALID [2020-07-18 06:35:34,273 INFO L280 TraceCheckUtils]: 122: Hoare triple {24656#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L31-2 {24656#true} is VALID [2020-07-18 06:35:34,273 INFO L280 TraceCheckUtils]: 123: Hoare triple {24656#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {24656#true} is VALID [2020-07-18 06:35:34,274 INFO L280 TraceCheckUtils]: 124: Hoare triple {24656#true} havoc #t~ret0.base, #t~ret0.offset; {24656#true} is VALID [2020-07-18 06:35:34,274 INFO L280 TraceCheckUtils]: 125: Hoare triple {24656#true} assume true; {24656#true} is VALID [2020-07-18 06:35:34,277 INFO L275 TraceCheckUtils]: 126: Hoare quadruple {24656#true} {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} #227#return; {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} is VALID [2020-07-18 06:35:34,278 INFO L280 TraceCheckUtils]: 127: Hoare triple {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} havoc #t~ret19.base, #t~ret19.offset; {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} is VALID [2020-07-18 06:35:34,280 INFO L263 TraceCheckUtils]: 128: Hoare triple {24663#(< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1))} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {24672#(not (= 0 |__VERIFIER_assert_#in~cond|))} is VALID [2020-07-18 06:35:34,281 INFO L280 TraceCheckUtils]: 129: Hoare triple {24672#(not (= 0 |__VERIFIER_assert_#in~cond|))} ~cond := #in~cond; {24673#(not (= 0 __VERIFIER_assert_~cond))} is VALID [2020-07-18 06:35:34,282 INFO L280 TraceCheckUtils]: 130: Hoare triple {24673#(not (= 0 __VERIFIER_assert_~cond))} assume 0 == ~cond; {24657#false} is VALID [2020-07-18 06:35:34,283 INFO L280 TraceCheckUtils]: 131: Hoare triple {24657#false} assume !false; {24657#false} is VALID [2020-07-18 06:35:34,294 INFO L134 CoverageAnalysis]: Checked inductivity of 210 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 210 trivial. 0 not checked. [2020-07-18 06:35:34,294 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [871106157] [2020-07-18 06:35:34,295 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-18 06:35:34,295 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2020-07-18 06:35:34,295 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1592593220] [2020-07-18 06:35:34,298 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 132 [2020-07-18 06:35:34,299 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-18 06:35:34,299 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-18 06:35:34,396 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:34,396 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-18 06:35:34,396 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-18 06:35:34,397 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-18 06:35:34,397 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2020-07-18 06:35:34,397 INFO L87 Difference]: Start difference. First operand 259 states and 283 transitions. Second operand 6 states. [2020-07-18 06:35:35,547 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:35,547 INFO L93 Difference]: Finished difference Result 259 states and 283 transitions. [2020-07-18 06:35:35,548 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-18 06:35:35,548 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 132 [2020-07-18 06:35:35,548 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-18 06:35:35,548 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-18 06:35:35,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 121 transitions. [2020-07-18 06:35:35,549 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-18 06:35:35,550 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 121 transitions. [2020-07-18 06:35:35,551 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 121 transitions. [2020-07-18 06:35:35,690 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:35,690 INFO L225 Difference]: With dead ends: 259 [2020-07-18 06:35:35,690 INFO L226 Difference]: Without dead ends: 0 [2020-07-18 06:35:35,692 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2020-07-18 06:35:35,692 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2020-07-18 06:35:35,692 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2020-07-18 06:35:35,692 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-18 06:35:35,693 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand 0 states. [2020-07-18 06:35:35,693 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2020-07-18 06:35:35,693 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2020-07-18 06:35:35,693 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:35,693 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2020-07-18 06:35:35,694 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-18 06:35:35,694 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:35,694 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:35,694 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2020-07-18 06:35:35,694 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2020-07-18 06:35:35,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-18 06:35:35,694 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2020-07-18 06:35:35,694 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-18 06:35:35,694 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:35,694 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-18 06:35:35,695 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-18 06:35:35,695 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-18 06:35:35,695 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2020-07-18 06:35:35,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2020-07-18 06:35:35,695 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 132 [2020-07-18 06:35:35,695 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-18 06:35:35,695 INFO L479 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2020-07-18 06:35:35,695 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-18 06:35:35,695 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2020-07-18 06:35:35,696 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-18 06:35:35,696 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2020-07-18 06:35:35,696 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-18 06:35:35,696 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable17 [2020-07-18 06:35:35,698 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2020-07-18 06:35:37,755 INFO L271 CegarLoopResult]: At program point L60(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,756 INFO L271 CegarLoopResult]: At program point L60-1(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,756 INFO L271 CegarLoopResult]: At program point L60-2(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,756 INFO L271 CegarLoopResult]: At program point L60-4(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,756 INFO L271 CegarLoopResult]: At program point L60-5(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,757 INFO L271 CegarLoopResult]: At program point L60-6(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,757 INFO L271 CegarLoopResult]: At program point L60-7(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,757 INFO L271 CegarLoopResult]: At program point L60-8(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,758 INFO L271 CegarLoopResult]: At program point L60-9(line 60) the Hoare annotation is: true [2020-07-18 06:35:37,758 INFO L271 CegarLoopResult]: At program point L52-1(lines 52 73) the Hoare annotation is: true [2020-07-18 06:35:37,758 INFO L264 CegarLoopResult]: At program point L60-11(line 60) the Hoare annotation is: (or (and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0) (<= (+ parse_expression_list_~j~0 1) 0)) (not |parse_expression_list_#t~short17|)) [2020-07-18 06:35:37,758 INFO L271 CegarLoopResult]: At program point L52-3(lines 52 73) the Hoare annotation is: true [2020-07-18 06:35:37,758 INFO L264 CegarLoopResult]: At program point L60-12(line 60) the Hoare annotation is: (or (and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0) (<= (+ parse_expression_list_~j~0 1) 0)) (not |parse_expression_list_#t~short17|)) [2020-07-18 06:35:37,758 INFO L271 CegarLoopResult]: At program point L52-4(lines 52 73) the Hoare annotation is: true [2020-07-18 06:35:37,759 INFO L271 CegarLoopResult]: At program point L60-13(lines 54 72) the Hoare annotation is: true [2020-07-18 06:35:37,759 INFO L271 CegarLoopResult]: At program point L69(line 69) the Hoare annotation is: true [2020-07-18 06:35:37,759 INFO L271 CegarLoopResult]: At program point L53(line 53) the Hoare annotation is: true [2020-07-18 06:35:37,759 INFO L271 CegarLoopResult]: At program point L53-1(line 53) the Hoare annotation is: true [2020-07-18 06:35:37,759 INFO L271 CegarLoopResult]: At program point L62(lines 62 64) the Hoare annotation is: true [2020-07-18 06:35:37,759 INFO L271 CegarLoopResult]: At program point L54(line 54) the Hoare annotation is: true [2020-07-18 06:35:37,759 INFO L271 CegarLoopResult]: At program point L54-1(line 54) the Hoare annotation is: true [2020-07-18 06:35:37,759 INFO L271 CegarLoopResult]: At program point L54-2(lines 54 72) the Hoare annotation is: true [2020-07-18 06:35:37,760 INFO L271 CegarLoopResult]: At program point L54-3(line 54) the Hoare annotation is: true [2020-07-18 06:35:37,760 INFO L271 CegarLoopResult]: At program point L63(line 63) the Hoare annotation is: true [2020-07-18 06:35:37,760 INFO L271 CegarLoopResult]: At program point L55(line 55) the Hoare annotation is: true [2020-07-18 06:35:37,760 INFO L271 CegarLoopResult]: At program point L56-1(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,761 INFO L271 CegarLoopResult]: At program point L56-2(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,761 INFO L271 CegarLoopResult]: At program point L56-4(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,761 INFO L271 CegarLoopResult]: At program point L56-5(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,761 INFO L271 CegarLoopResult]: At program point L56-6(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,761 INFO L271 CegarLoopResult]: At program point L56-7(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,761 INFO L271 CegarLoopResult]: At program point L56-8(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,762 INFO L271 CegarLoopResult]: At program point L56-9(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,762 INFO L264 CegarLoopResult]: At program point L56-11(line 56) the Hoare annotation is: |parse_expression_list_#t~short7| [2020-07-18 06:35:37,762 INFO L271 CegarLoopResult]: At program point L56-12(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,762 INFO L271 CegarLoopResult]: At program point L56-13(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,762 INFO L271 CegarLoopResult]: At program point L56-14(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,762 INFO L271 CegarLoopResult]: At program point L56-15(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,762 INFO L271 CegarLoopResult]: At program point L73(lines 52 73) the Hoare annotation is: true [2020-07-18 06:35:37,762 INFO L271 CegarLoopResult]: At program point L56-16(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,762 INFO L271 CegarLoopResult]: At program point L73-1(line 73) the Hoare annotation is: true [2020-07-18 06:35:37,763 INFO L271 CegarLoopResult]: At program point L56-17(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,763 INFO L271 CegarLoopResult]: At program point L73-2(line 73) the Hoare annotation is: true [2020-07-18 06:35:37,763 INFO L271 CegarLoopResult]: At program point L56-18(line 56) the Hoare annotation is: true [2020-07-18 06:35:37,763 INFO L264 CegarLoopResult]: At program point L65(line 65) the Hoare annotation is: (< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1)) [2020-07-18 06:35:37,763 INFO L264 CegarLoopResult]: At program point L65-1(line 65) the Hoare annotation is: (< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1)) [2020-07-18 06:35:37,763 INFO L271 CegarLoopResult]: At program point L57(line 57) the Hoare annotation is: true [2020-07-18 06:35:37,763 INFO L271 CegarLoopResult]: At program point L57-1(line 57) the Hoare annotation is: true [2020-07-18 06:35:37,764 INFO L271 CegarLoopResult]: At program point L57-2(line 57) the Hoare annotation is: true [2020-07-18 06:35:37,764 INFO L271 CegarLoopResult]: At program point L57-3(line 57) the Hoare annotation is: true [2020-07-18 06:35:37,764 INFO L271 CegarLoopResult]: At program point L57-4(line 57) the Hoare annotation is: true [2020-07-18 06:35:37,764 INFO L271 CegarLoopResult]: At program point L57-6(line 57) the Hoare annotation is: true [2020-07-18 06:35:37,765 INFO L271 CegarLoopResult]: At program point L57-7(line 57) the Hoare annotation is: true [2020-07-18 06:35:37,765 INFO L264 CegarLoopResult]: At program point L49(line 49) the Hoare annotation is: (= |#valid| |old(#valid)|) [2020-07-18 06:35:37,765 INFO L264 CegarLoopResult]: At program point L49-1(line 49) the Hoare annotation is: (and (= 0 parse_expression_list_~start~0) (= |#valid| |old(#valid)|)) [2020-07-18 06:35:37,765 INFO L264 CegarLoopResult]: At program point L49-2(line 49) the Hoare annotation is: (and (= 0 parse_expression_list_~start~0) (= |#valid| |old(#valid)|) (<= (+ parse_expression_list_~i~0 1) 0)) [2020-07-18 06:35:37,765 INFO L264 CegarLoopResult]: At program point L66(line 66) the Hoare annotation is: (< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1)) [2020-07-18 06:35:37,765 INFO L264 CegarLoopResult]: At program point L66-1(line 66) the Hoare annotation is: (< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1)) [2020-07-18 06:35:37,765 INFO L271 CegarLoopResult]: At program point parse_expression_listFINAL(lines 47 75) the Hoare annotation is: true [2020-07-18 06:35:37,765 INFO L264 CegarLoopResult]: At program point parse_expression_listENTRY(lines 47 75) the Hoare annotation is: (= |#valid| |old(#valid)|) [2020-07-18 06:35:37,766 INFO L264 CegarLoopResult]: At program point L50(line 50) the Hoare annotation is: (and (= 0 parse_expression_list_~start~0) (= |#valid| |old(#valid)|) (<= (+ parse_expression_list_~i~0 1) 0) (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)) [2020-07-18 06:35:37,766 INFO L264 CegarLoopResult]: At program point L50-1(lines 48 75) the Hoare annotation is: (and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0) (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)) [2020-07-18 06:35:37,766 INFO L271 CegarLoopResult]: At program point L50-2(line 50) the Hoare annotation is: true [2020-07-18 06:35:37,766 INFO L271 CegarLoopResult]: At program point L50-3(line 50) the Hoare annotation is: true [2020-07-18 06:35:37,767 INFO L271 CegarLoopResult]: At program point L50-4(line 50) the Hoare annotation is: true [2020-07-18 06:35:37,768 INFO L271 CegarLoopResult]: At program point L50-5(line 50) the Hoare annotation is: true [2020-07-18 06:35:37,768 INFO L271 CegarLoopResult]: At program point L50-6(line 50) the Hoare annotation is: true [2020-07-18 06:35:37,768 INFO L271 CegarLoopResult]: At program point L50-7(line 50) the Hoare annotation is: true [2020-07-18 06:35:37,768 INFO L271 CegarLoopResult]: At program point L50-8(line 50) the Hoare annotation is: true [2020-07-18 06:35:37,768 INFO L271 CegarLoopResult]: At program point L50-9(line 50) the Hoare annotation is: true [2020-07-18 06:35:37,768 INFO L264 CegarLoopResult]: At program point L67(lines 61 70) the Hoare annotation is: (< parse_expression_list_~j~0 (+ parse_expression_list_~start~0 1)) [2020-07-18 06:35:37,768 INFO L271 CegarLoopResult]: At program point parse_expression_listEXIT(lines 47 75) the Hoare annotation is: true [2020-07-18 06:35:37,768 INFO L271 CegarLoopResult]: At program point L59-1(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,769 INFO L264 CegarLoopResult]: At program point L59-2(line 59) the Hoare annotation is: (or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|) [2020-07-18 06:35:37,769 INFO L264 CegarLoopResult]: At program point L59-3(line 59) the Hoare annotation is: (or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|) [2020-07-18 06:35:37,769 INFO L264 CegarLoopResult]: At program point L59-4(line 59) the Hoare annotation is: (or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|) [2020-07-18 06:35:37,769 INFO L264 CegarLoopResult]: At program point L59-6(line 59) the Hoare annotation is: (or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|) [2020-07-18 06:35:37,769 INFO L264 CegarLoopResult]: At program point L59-7(line 59) the Hoare annotation is: (or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|) [2020-07-18 06:35:37,769 INFO L271 CegarLoopResult]: At program point L51(line 51) the Hoare annotation is: true [2020-07-18 06:35:37,769 INFO L264 CegarLoopResult]: At program point L59-8(line 59) the Hoare annotation is: (or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|) [2020-07-18 06:35:37,769 INFO L271 CegarLoopResult]: At program point L59-10(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,770 INFO L264 CegarLoopResult]: At program point L59-11(line 59) the Hoare annotation is: (or (and (<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)) (and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0) (<= (+ parse_expression_list_~j~0 1) 0)) (not |parse_expression_list_#t~short14|)) [2020-07-18 06:35:37,770 INFO L271 CegarLoopResult]: At program point L59-12(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,770 INFO L271 CegarLoopResult]: At program point L59-13(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,770 INFO L271 CegarLoopResult]: At program point L59-14(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,770 INFO L264 CegarLoopResult]: At program point L59-16(line 59) the Hoare annotation is: (or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|) [2020-07-18 06:35:37,770 INFO L271 CegarLoopResult]: At program point L59-17(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,771 INFO L271 CegarLoopResult]: At program point L59-18(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,772 INFO L271 CegarLoopResult]: At program point L59-19(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,772 INFO L271 CegarLoopResult]: At program point L59-20(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,772 INFO L271 CegarLoopResult]: At program point L59-21(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,772 INFO L271 CegarLoopResult]: At program point L59-22(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,773 INFO L271 CegarLoopResult]: At program point L59-23(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,773 INFO L271 CegarLoopResult]: At program point L59-24(line 59) the Hoare annotation is: true [2020-07-18 06:35:37,773 INFO L271 CegarLoopResult]: At program point L-1(line -1) the Hoare annotation is: true [2020-07-18 06:35:37,773 INFO L271 CegarLoopResult]: At program point L-1-1(line -1) the Hoare annotation is: true [2020-07-18 06:35:37,773 INFO L271 CegarLoopResult]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2020-07-18 06:35:37,773 INFO L264 CegarLoopResult]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|)) [2020-07-18 06:35:37,773 INFO L271 CegarLoopResult]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2020-07-18 06:35:37,773 INFO L271 CegarLoopResult]: At program point r_strncpyFINAL(line 31) the Hoare annotation is: true [2020-07-18 06:35:37,774 INFO L271 CegarLoopResult]: At program point L31(line 31) the Hoare annotation is: true [2020-07-18 06:35:37,774 INFO L271 CegarLoopResult]: At program point L31-1(line 31) the Hoare annotation is: true [2020-07-18 06:35:37,774 INFO L271 CegarLoopResult]: At program point L31-2(line 31) the Hoare annotation is: true [2020-07-18 06:35:37,774 INFO L271 CegarLoopResult]: At program point r_strncpyEXIT(line 31) the Hoare annotation is: true [2020-07-18 06:35:37,774 INFO L271 CegarLoopResult]: At program point L31-3(line 31) the Hoare annotation is: true [2020-07-18 06:35:37,774 INFO L271 CegarLoopResult]: At program point L31-4(line 31) the Hoare annotation is: true [2020-07-18 06:35:37,774 INFO L271 CegarLoopResult]: At program point r_strncpyENTRY(line 31) the Hoare annotation is: true [2020-07-18 06:35:37,774 INFO L271 CegarLoopResult]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2020-07-18 06:35:37,775 INFO L271 CegarLoopResult]: At program point L-1(line -1) the Hoare annotation is: true [2020-07-18 06:35:37,775 INFO L271 CegarLoopResult]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2020-07-18 06:35:37,775 INFO L271 CegarLoopResult]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2020-07-18 06:35:37,775 INFO L271 CegarLoopResult]: At program point mainEXIT(lines 76 85) the Hoare annotation is: true [2020-07-18 06:35:37,775 INFO L271 CegarLoopResult]: At program point L83(line 83) the Hoare annotation is: true [2020-07-18 06:35:37,775 INFO L271 CegarLoopResult]: At program point L83-1(line 83) the Hoare annotation is: true [2020-07-18 06:35:37,775 INFO L264 CegarLoopResult]: At program point L79-2(lines 79 81) the Hoare annotation is: (<= main_~i~1 7) [2020-07-18 06:35:37,775 INFO L271 CegarLoopResult]: At program point mainFINAL(lines 76 85) the Hoare annotation is: true [2020-07-18 06:35:37,775 INFO L264 CegarLoopResult]: At program point L79-3(line 79) the Hoare annotation is: (<= main_~i~1 7) [2020-07-18 06:35:37,776 INFO L271 CegarLoopResult]: At program point L79-4(line 79) the Hoare annotation is: true [2020-07-18 06:35:37,776 INFO L271 CegarLoopResult]: At program point L79-5(lines 79 81) the Hoare annotation is: true [2020-07-18 06:35:37,776 INFO L271 CegarLoopResult]: At program point L79-6(lines 79 81) the Hoare annotation is: true [2020-07-18 06:35:37,777 INFO L264 CegarLoopResult]: At program point mainENTRY(lines 76 85) the Hoare annotation is: (= |#valid| |old(#valid)|) [2020-07-18 06:35:37,777 INFO L271 CegarLoopResult]: At program point L84(line 84) the Hoare annotation is: true [2020-07-18 06:35:37,777 INFO L271 CegarLoopResult]: At program point L82(line 82) the Hoare annotation is: true [2020-07-18 06:35:37,778 INFO L264 CegarLoopResult]: At program point L80(line 80) the Hoare annotation is: (<= main_~i~1 7) [2020-07-18 06:35:37,778 INFO L264 CegarLoopResult]: At program point L80-1(line 80) the Hoare annotation is: (<= main_~i~1 7) [2020-07-18 06:35:37,778 INFO L271 CegarLoopResult]: At program point L78(line 78) the Hoare annotation is: true [2020-07-18 06:35:37,778 INFO L264 CegarLoopResult]: At program point L80-2(line 80) the Hoare annotation is: (<= main_~i~1 7) [2020-07-18 06:35:37,778 INFO L271 CegarLoopResult]: At program point L78-1(line 78) the Hoare annotation is: true [2020-07-18 06:35:37,779 INFO L271 CegarLoopResult]: At program point L78-2(line 78) the Hoare annotation is: true [2020-07-18 06:35:37,779 INFO L271 CegarLoopResult]: At program point __VERIFIER_assertENTRY(lines 3 8) the Hoare annotation is: true [2020-07-18 06:35:37,779 INFO L264 CegarLoopResult]: At program point __VERIFIER_assertEXIT(lines 3 8) the Hoare annotation is: (or (= 0 |__VERIFIER_assert_#in~cond|) (not (= 0 __VERIFIER_assert_~cond))) [2020-07-18 06:35:37,779 INFO L264 CegarLoopResult]: At program point L5(line 5) the Hoare annotation is: (= 0 |__VERIFIER_assert_#in~cond|) [2020-07-18 06:35:37,779 INFO L264 CegarLoopResult]: At program point L4(lines 4 6) the Hoare annotation is: (or (= 0 |__VERIFIER_assert_#in~cond|) (not (= 0 __VERIFIER_assert_~cond))) [2020-07-18 06:35:37,780 INFO L264 CegarLoopResult]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 5) the Hoare annotation is: (= 0 |__VERIFIER_assert_#in~cond|) [2020-07-18 06:35:37,780 INFO L264 CegarLoopResult]: At program point L4-2(lines 3 8) the Hoare annotation is: (or (= 0 |__VERIFIER_assert_#in~cond|) (not (= 0 __VERIFIER_assert_~cond))) [2020-07-18 06:35:37,814 INFO L163 areAnnotationChecker]: CFG has 153 edges. 153 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2020-07-18 06:35:37,839 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 18.07 06:35:37 BoogieIcfgContainer [2020-07-18 06:35:37,839 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-18 06:35:37,846 INFO L168 Benchmark]: Toolchain (without parser) took 53248.17 ms. Allocated memory was 135.8 MB in the beginning and 551.0 MB in the end (delta: 415.2 MB). Free memory was 100.1 MB in the beginning and 141.0 MB in the end (delta: -40.9 MB). Peak memory consumption was 374.4 MB. Max. memory is 7.1 GB. [2020-07-18 06:35:37,846 INFO L168 Benchmark]: CDTParser took 0.45 ms. Allocated memory is still 135.8 MB. Free memory was 119.2 MB in the beginning and 119.0 MB in the end (delta: 209.8 kB). Peak memory consumption was 209.8 kB. Max. memory is 7.1 GB. [2020-07-18 06:35:37,847 INFO L168 Benchmark]: CACSL2BoogieTranslator took 526.34 ms. Allocated memory was 135.8 MB in the beginning and 201.3 MB in the end (delta: 65.5 MB). Free memory was 99.7 MB in the beginning and 177.2 MB in the end (delta: -77.5 MB). Peak memory consumption was 23.8 MB. Max. memory is 7.1 GB. [2020-07-18 06:35:37,847 INFO L168 Benchmark]: Boogie Preprocessor took 81.63 ms. Allocated memory is still 201.3 MB. Free memory was 177.2 MB in the beginning and 174.5 MB in the end (delta: 2.8 MB). Peak memory consumption was 2.8 MB. Max. memory is 7.1 GB. [2020-07-18 06:35:37,850 INFO L168 Benchmark]: RCFGBuilder took 881.12 ms. Allocated memory is still 201.3 MB. Free memory was 174.5 MB in the beginning and 120.9 MB in the end (delta: 53.6 MB). Peak memory consumption was 53.6 MB. Max. memory is 7.1 GB. [2020-07-18 06:35:37,850 INFO L168 Benchmark]: TraceAbstraction took 51745.73 ms. Allocated memory was 201.3 MB in the beginning and 551.0 MB in the end (delta: 349.7 MB). Free memory was 120.2 MB in the beginning and 141.0 MB in the end (delta: -20.8 MB). Peak memory consumption was 328.9 MB. Max. memory is 7.1 GB. [2020-07-18 06:35:37,857 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.45 ms. Allocated memory is still 135.8 MB. Free memory was 119.2 MB in the beginning and 119.0 MB in the end (delta: 209.8 kB). Peak memory consumption was 209.8 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 526.34 ms. Allocated memory was 135.8 MB in the beginning and 201.3 MB in the end (delta: 65.5 MB). Free memory was 99.7 MB in the beginning and 177.2 MB in the end (delta: -77.5 MB). Peak memory consumption was 23.8 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 81.63 ms. Allocated memory is still 201.3 MB. Free memory was 177.2 MB in the beginning and 174.5 MB in the end (delta: 2.8 MB). Peak memory consumption was 2.8 MB. Max. memory is 7.1 GB. * RCFGBuilder took 881.12 ms. Allocated memory is still 201.3 MB. Free memory was 174.5 MB in the beginning and 120.9 MB in the end (delta: 53.6 MB). Peak memory consumption was 53.6 MB. Max. memory is 7.1 GB. * TraceAbstraction took 51745.73 ms. Allocated memory was 201.3 MB in the beginning and 551.0 MB in the end (delta: 349.7 MB). Free memory was 120.2 MB in the beginning and 141.0 MB in the end (delta: -20.8 MB). Peak memory consumption was 328.9 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 5]: call of __VERIFIER_error() unreachable For all program executions holds that call of __VERIFIER_error() unreachable at this location - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 52]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 56]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 59]: Loop Invariant Derived loop invariant: 1 - InvariantResult [Line: 79]: Loop Invariant Derived loop invariant: 1 - ProcedureContractResult [Line: 47]: Procedure Contract for parse_expression_list Derived contract for procedure parse_expression_list: 1 - ProcedureContractResult [Line: 31]: Procedure Contract for r_strncpy Derived contract for procedure r_strncpy: 1 - ProcedureContractResult [Line: 76]: Procedure Contract for main Derived contract for procedure main: 1 - ProcedureContractResult [Line: 3]: Procedure Contract for __VERIFIER_assert Derived contract for procedure __VERIFIER_assert: 0 == \old(cond) || !(0 == cond) - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 135 locations, 1 error locations. Started 1 CEGAR loops. VerificationResult: SAFE, OverallTime: 49.5s, OverallIterations: 18, TraceHistogramMax: 8, AutomataDifference: 35.3s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 2.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 2214 SDtfs, 2052 SDslu, 9095 SDs, 0 SdLazy, 4814 SolverSat, 183 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 5.8s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 311 GetRequests, 90 SyntacticMatches, 0 SemanticMatches, 221 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 648 ImplicationChecksByTransitivity, 3.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=259occurred in iteration=17, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 3.5s AutomataMinimizationTime, 18 MinimizatonAttempts, 798 StatesRemovedByMinimization, 12 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 135 LocationsWithAnnotation, 1219 PreInvPairs, 1604 NumberOfFragments, 346 HoareAnnotationTreeSize, 1219 FomulaSimplifications, 6799 FormulaSimplificationTreeSizeReduction, 0.7s HoareSimplificationTime, 135 FomulaSimplificationsInter, 318 FormulaSimplificationTreeSizeReductionInter, 0.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.5s SatisfiabilityAnalysisTime, 3.6s InterpolantComputationTime, 1888 NumberOfCodeBlocks, 1888 NumberOfCodeBlocksAsserted, 18 NumberOfCheckSat, 1870 ConstructedInterpolants, 0 QuantifiedInterpolants, 401187 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 18 InterpolantComputations, 10 PerfectInterpolantSequences, 1845/2269 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...