/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/verisec_OpenSER_cases1_stripFullBoth_arr.i -------------------------------------------------------------------------------- This is Ultimate 0.1.25-8fc6572 [2020-07-11 02:28:25,639 INFO L177 SettingsManager]: Resetting all preferences to default values... [2020-07-11 02:28:25,641 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2020-07-11 02:28:25,659 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2020-07-11 02:28:25,660 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2020-07-11 02:28:25,662 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2020-07-11 02:28:25,664 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2020-07-11 02:28:25,676 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2020-07-11 02:28:25,678 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2020-07-11 02:28:25,680 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2020-07-11 02:28:25,681 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2020-07-11 02:28:25,683 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2020-07-11 02:28:25,683 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2020-07-11 02:28:25,684 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2020-07-11 02:28:25,685 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2020-07-11 02:28:25,686 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2020-07-11 02:28:25,687 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2020-07-11 02:28:25,688 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2020-07-11 02:28:25,690 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2020-07-11 02:28:25,692 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2020-07-11 02:28:25,693 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2020-07-11 02:28:25,694 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2020-07-11 02:28:25,696 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2020-07-11 02:28:25,696 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2020-07-11 02:28:25,699 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2020-07-11 02:28:25,699 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2020-07-11 02:28:25,700 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2020-07-11 02:28:25,701 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2020-07-11 02:28:25,701 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2020-07-11 02:28:25,702 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2020-07-11 02:28:25,702 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2020-07-11 02:28:25,703 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2020-07-11 02:28:25,704 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2020-07-11 02:28:25,705 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2020-07-11 02:28:25,706 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2020-07-11 02:28:25,706 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2020-07-11 02:28:25,707 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2020-07-11 02:28:25,707 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2020-07-11 02:28:25,707 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2020-07-11 02:28:25,708 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2020-07-11 02:28:25,709 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2020-07-11 02:28:25,710 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationFastUPR_32.epf [2020-07-11 02:28:25,719 INFO L113 SettingsManager]: Loading preferences was successful [2020-07-11 02:28:25,719 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2020-07-11 02:28:25,721 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2020-07-11 02:28:25,721 INFO L138 SettingsManager]: * sizeof long=4 [2020-07-11 02:28:25,721 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2020-07-11 02:28:25,721 INFO L138 SettingsManager]: * sizeof POINTER=4 [2020-07-11 02:28:25,722 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2020-07-11 02:28:25,722 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2020-07-11 02:28:25,722 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2020-07-11 02:28:25,722 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2020-07-11 02:28:25,722 INFO L138 SettingsManager]: * sizeof long double=12 [2020-07-11 02:28:25,723 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2020-07-11 02:28:25,723 INFO L138 SettingsManager]: * Use constant arrays=true [2020-07-11 02:28:25,723 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2020-07-11 02:28:25,723 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2020-07-11 02:28:25,723 INFO L138 SettingsManager]: * Size of a code block=SingleStatement [2020-07-11 02:28:25,724 INFO L138 SettingsManager]: * To the following directory=./dump/ [2020-07-11 02:28:25,724 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2020-07-11 02:28:25,724 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2020-07-11 02:28:25,724 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2020-07-11 02:28:25,724 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=AcceleratedInterpolation [2020-07-11 02:28:25,725 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2020-07-11 02:28:25,725 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-11 02:28:26,042 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2020-07-11 02:28:26,066 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2020-07-11 02:28:26,070 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2020-07-11 02:28:26,071 INFO L271 PluginConnector]: Initializing CDTParser... [2020-07-11 02:28:26,071 INFO L275 PluginConnector]: CDTParser initialized [2020-07-11 02:28:26,072 INFO L429 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loops/verisec_OpenSER_cases1_stripFullBoth_arr.i [2020-07-11 02:28:26,152 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8ac02b125/c9b58f41f1834d418ec9856a87e842b3/FLAGf55bb49cd [2020-07-11 02:28:26,680 INFO L306 CDTParser]: Found 1 translation units. [2020-07-11 02:28:26,681 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops/verisec_OpenSER_cases1_stripFullBoth_arr.i [2020-07-11 02:28:26,693 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8ac02b125/c9b58f41f1834d418ec9856a87e842b3/FLAGf55bb49cd [2020-07-11 02:28:27,041 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8ac02b125/c9b58f41f1834d418ec9856a87e842b3 [2020-07-11 02:28:27,051 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2020-07-11 02:28:27,053 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2020-07-11 02:28:27,054 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2020-07-11 02:28:27,055 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2020-07-11 02:28:27,058 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2020-07-11 02:28:27,060 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,063 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@7d944cb5 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27, skipping insertion in model container [2020-07-11 02:28:27,063 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,071 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2020-07-11 02:28:27,091 INFO L178 MainTranslator]: Built tables and reachable declarations [2020-07-11 02:28:27,300 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-11 02:28:27,312 INFO L203 MainTranslator]: Completed pre-run [2020-07-11 02:28:27,451 INFO L206 PostProcessor]: Analyzing one entry point: main [2020-07-11 02:28:27,483 INFO L208 MainTranslator]: Completed translation [2020-07-11 02:28:27,484 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27 WrapperNode [2020-07-11 02:28:27,484 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2020-07-11 02:28:27,485 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2020-07-11 02:28:27,485 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2020-07-11 02:28:27,485 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2020-07-11 02:28:27,498 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,499 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,510 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,510 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,530 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,546 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,550 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (1/1) ... [2020-07-11 02:28:27,559 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2020-07-11 02:28:27,560 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2020-07-11 02:28:27,560 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2020-07-11 02:28:27,560 INFO L275 PluginConnector]: RCFGBuilder initialized [2020-07-11 02:28:27,561 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (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-11 02:28:27,624 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2020-07-11 02:28:27,625 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2020-07-11 02:28:27,625 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2020-07-11 02:28:27,625 INFO L138 BoogieDeclarations]: Found implementation of procedure r_strncpy [2020-07-11 02:28:27,625 INFO L138 BoogieDeclarations]: Found implementation of procedure parse_expression_list [2020-07-11 02:28:27,625 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2020-07-11 02:28:27,626 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2020-07-11 02:28:27,626 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2020-07-11 02:28:27,626 INFO L130 BoogieDeclarations]: Found specification of procedure strchr [2020-07-11 02:28:27,626 INFO L130 BoogieDeclarations]: Found specification of procedure strrchr [2020-07-11 02:28:27,626 INFO L130 BoogieDeclarations]: Found specification of procedure strstr [2020-07-11 02:28:27,626 INFO L130 BoogieDeclarations]: Found specification of procedure strncpy [2020-07-11 02:28:27,627 INFO L130 BoogieDeclarations]: Found specification of procedure strncpy_ptr [2020-07-11 02:28:27,627 INFO L130 BoogieDeclarations]: Found specification of procedure strcpy [2020-07-11 02:28:27,627 INFO L130 BoogieDeclarations]: Found specification of procedure strlen [2020-07-11 02:28:27,627 INFO L130 BoogieDeclarations]: Found specification of procedure strncmp [2020-07-11 02:28:27,627 INFO L130 BoogieDeclarations]: Found specification of procedure strcmp [2020-07-11 02:28:27,628 INFO L130 BoogieDeclarations]: Found specification of procedure strcat [2020-07-11 02:28:27,628 INFO L130 BoogieDeclarations]: Found specification of procedure memcpy [2020-07-11 02:28:27,628 INFO L130 BoogieDeclarations]: Found specification of procedure isascii [2020-07-11 02:28:27,628 INFO L130 BoogieDeclarations]: Found specification of procedure isspace [2020-07-11 02:28:27,628 INFO L130 BoogieDeclarations]: Found specification of procedure getc [2020-07-11 02:28:27,631 INFO L130 BoogieDeclarations]: Found specification of procedure strrand [2020-07-11 02:28:27,631 INFO L130 BoogieDeclarations]: Found specification of procedure istrrand [2020-07-11 02:28:27,631 INFO L130 BoogieDeclarations]: Found specification of procedure istrchr [2020-07-11 02:28:27,631 INFO L130 BoogieDeclarations]: Found specification of procedure istrrchr [2020-07-11 02:28:27,631 INFO L130 BoogieDeclarations]: Found specification of procedure istrncmp [2020-07-11 02:28:27,631 INFO L130 BoogieDeclarations]: Found specification of procedure istrstr [2020-07-11 02:28:27,632 INFO L130 BoogieDeclarations]: Found specification of procedure r_strncpy [2020-07-11 02:28:27,632 INFO L130 BoogieDeclarations]: Found specification of procedure r_strcpy [2020-07-11 02:28:27,632 INFO L130 BoogieDeclarations]: Found specification of procedure r_strcat [2020-07-11 02:28:27,632 INFO L130 BoogieDeclarations]: Found specification of procedure r_strncat [2020-07-11 02:28:27,632 INFO L130 BoogieDeclarations]: Found specification of procedure r_memcpy [2020-07-11 02:28:27,632 INFO L130 BoogieDeclarations]: Found specification of procedure parse_expression_list [2020-07-11 02:28:27,632 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2020-07-11 02:28:27,633 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2020-07-11 02:28:27,633 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2020-07-11 02:28:27,633 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2020-07-11 02:28:27,633 INFO L130 BoogieDeclarations]: Found specification of procedure main [2020-07-11 02:28:27,633 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2020-07-11 02:28:27,633 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2020-07-11 02:28:28,271 INFO L290 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2020-07-11 02:28:28,272 INFO L295 CfgBuilder]: Removed 3 assume(true) statements. [2020-07-11 02:28:28,277 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.07 02:28:28 BoogieIcfgContainer [2020-07-11 02:28:28,277 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2020-07-11 02:28:28,279 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2020-07-11 02:28:28,279 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2020-07-11 02:28:28,283 INFO L275 PluginConnector]: TraceAbstraction initialized [2020-07-11 02:28:28,283 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 11.07 02:28:27" (1/3) ... [2020-07-11 02:28:28,284 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@a713457 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.07 02:28:28, skipping insertion in model container [2020-07-11 02:28:28,284 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 11.07 02:28:27" (2/3) ... [2020-07-11 02:28:28,285 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@a713457 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 11.07 02:28:28, skipping insertion in model container [2020-07-11 02:28:28,285 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 11.07 02:28:28" (3/3) ... [2020-07-11 02:28:28,287 INFO L109 eAbstractionObserver]: Analyzing ICFG verisec_OpenSER_cases1_stripFullBoth_arr.i [2020-07-11 02:28:28,300 INFO L157 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2020-07-11 02:28:28,310 INFO L169 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2020-07-11 02:28:28,326 INFO L251 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2020-07-11 02:28:28,351 INFO L375 AbstractCegarLoop]: Interprodecural is true [2020-07-11 02:28:28,352 INFO L376 AbstractCegarLoop]: Hoare is true [2020-07-11 02:28:28,352 INFO L377 AbstractCegarLoop]: Compute interpolants for Craig_NestedInterpolation [2020-07-11 02:28:28,352 INFO L378 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2020-07-11 02:28:28,353 INFO L379 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2020-07-11 02:28:28,353 INFO L380 AbstractCegarLoop]: Difference is false [2020-07-11 02:28:28,353 INFO L381 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2020-07-11 02:28:28,353 INFO L385 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2020-07-11 02:28:28,378 INFO L276 IsEmpty]: Start isEmpty. Operand 123 states. [2020-07-11 02:28:28,394 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 49 [2020-07-11 02:28:28,395 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:28,396 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] [2020-07-11 02:28:28,397 INFO L427 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:28,404 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:28,404 INFO L82 PathProgramCache]: Analyzing trace with hash 2116113079, now seen corresponding path program 1 times [2020-07-11 02:28:28,414 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:28,415 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [471012821] [2020-07-11 02:28:28,415 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:28,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:28,661 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:28,679 INFO L280 TraceCheckUtils]: 0: Hoare triple {141#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {126#true} is VALID [2020-07-11 02:28:28,680 INFO L280 TraceCheckUtils]: 1: Hoare triple {126#true} #valid := #valid[0 := 0]; {126#true} is VALID [2020-07-11 02:28:28,680 INFO L280 TraceCheckUtils]: 2: Hoare triple {126#true} assume 0 < #StackHeapBarrier; {126#true} is VALID [2020-07-11 02:28:28,681 INFO L280 TraceCheckUtils]: 3: Hoare triple {126#true} assume true; {126#true} is VALID [2020-07-11 02:28:28,682 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {126#true} {126#true} #205#return; {126#true} is VALID [2020-07-11 02:28:28,687 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:28,696 INFO L280 TraceCheckUtils]: 0: Hoare triple {126#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {126#true} is VALID [2020-07-11 02:28:28,697 INFO L280 TraceCheckUtils]: 1: Hoare triple {126#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {126#true} is VALID [2020-07-11 02:28:28,697 INFO L280 TraceCheckUtils]: 2: Hoare triple {126#true} ~n := #in~n; {126#true} is VALID [2020-07-11 02:28:28,698 INFO L280 TraceCheckUtils]: 3: Hoare triple {126#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {126#true} is VALID [2020-07-11 02:28:28,698 INFO L280 TraceCheckUtils]: 4: Hoare triple {126#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {126#true} is VALID [2020-07-11 02:28:28,699 INFO L280 TraceCheckUtils]: 5: Hoare triple {126#true} havoc #t~ret0.base, #t~ret0.offset; {126#true} is VALID [2020-07-11 02:28:28,699 INFO L280 TraceCheckUtils]: 6: Hoare triple {126#true} assume true; {126#true} is VALID [2020-07-11 02:28:28,700 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {126#true} {127#false} #201#return; {127#false} is VALID [2020-07-11 02:28:28,703 INFO L263 TraceCheckUtils]: 0: Hoare triple {126#true} call ULTIMATE.init(); {141#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:28,704 INFO L280 TraceCheckUtils]: 1: Hoare triple {141#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {126#true} is VALID [2020-07-11 02:28:28,704 INFO L280 TraceCheckUtils]: 2: Hoare triple {126#true} #valid := #valid[0 := 0]; {126#true} is VALID [2020-07-11 02:28:28,704 INFO L280 TraceCheckUtils]: 3: Hoare triple {126#true} assume 0 < #StackHeapBarrier; {126#true} is VALID [2020-07-11 02:28:28,705 INFO L280 TraceCheckUtils]: 4: Hoare triple {126#true} assume true; {126#true} is VALID [2020-07-11 02:28:28,705 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {126#true} {126#true} #205#return; {126#true} is VALID [2020-07-11 02:28:28,706 INFO L263 TraceCheckUtils]: 6: Hoare triple {126#true} call #t~ret21 := main(); {126#true} is VALID [2020-07-11 02:28:28,706 INFO L280 TraceCheckUtils]: 7: Hoare triple {126#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {126#true} is VALID [2020-07-11 02:28:28,707 INFO L280 TraceCheckUtils]: 8: Hoare triple {126#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {126#true} is VALID [2020-07-11 02:28:28,707 INFO L263 TraceCheckUtils]: 9: Hoare triple {126#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {126#true} is VALID [2020-07-11 02:28:28,707 INFO L280 TraceCheckUtils]: 10: Hoare triple {126#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {126#true} is VALID [2020-07-11 02:28:28,708 INFO L280 TraceCheckUtils]: 11: Hoare triple {126#true} ~start~0 := 0; {126#true} is VALID [2020-07-11 02:28:28,708 INFO L280 TraceCheckUtils]: 12: Hoare triple {126#true} ~i~0 := -1; {126#true} is VALID [2020-07-11 02:28:28,709 INFO L280 TraceCheckUtils]: 13: Hoare triple {126#true} ~j~0 := -1; {126#true} is VALID [2020-07-11 02:28:28,709 INFO L280 TraceCheckUtils]: 14: Hoare triple {126#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {126#true} is VALID [2020-07-11 02:28:28,710 INFO L280 TraceCheckUtils]: 15: Hoare triple {126#true} assume !(~str.base == 0 && ~str.offset == 0); {126#true} is VALID [2020-07-11 02:28:28,710 INFO L280 TraceCheckUtils]: 16: Hoare triple {126#true} #t~post2 := ~i~0; {126#true} is VALID [2020-07-11 02:28:28,710 INFO L280 TraceCheckUtils]: 17: Hoare triple {126#true} ~i~0 := 1 + #t~post2; {126#true} is VALID [2020-07-11 02:28:28,711 INFO L280 TraceCheckUtils]: 18: Hoare triple {126#true} havoc #t~post2; {126#true} is VALID [2020-07-11 02:28:28,711 INFO L280 TraceCheckUtils]: 19: Hoare triple {126#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {126#true} is VALID [2020-07-11 02:28:28,712 INFO L280 TraceCheckUtils]: 20: Hoare triple {126#true} #t~switch4 := 0 == #t~mem3; {126#true} is VALID [2020-07-11 02:28:28,712 INFO L280 TraceCheckUtils]: 21: Hoare triple {126#true} assume #t~switch4; {126#true} is VALID [2020-07-11 02:28:28,713 INFO L280 TraceCheckUtils]: 22: Hoare triple {126#true} assume !true; {127#false} is VALID [2020-07-11 02:28:28,714 INFO L280 TraceCheckUtils]: 23: Hoare triple {127#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {127#false} is VALID [2020-07-11 02:28:28,714 INFO L280 TraceCheckUtils]: 24: Hoare triple {127#false} assume !(34 == #t~mem9); {127#false} is VALID [2020-07-11 02:28:28,715 INFO L280 TraceCheckUtils]: 25: Hoare triple {127#false} havoc #t~mem9; {127#false} is VALID [2020-07-11 02:28:28,715 INFO L280 TraceCheckUtils]: 26: Hoare triple {127#false} ~j~0 := ~i~0 - 1; {127#false} is VALID [2020-07-11 02:28:28,715 INFO L280 TraceCheckUtils]: 27: Hoare triple {127#false} assume !true; {127#false} is VALID [2020-07-11 02:28:28,716 INFO L280 TraceCheckUtils]: 28: Hoare triple {127#false} #t~short17 := 0 < ~j~0; {127#false} is VALID [2020-07-11 02:28:28,716 INFO L280 TraceCheckUtils]: 29: Hoare triple {127#false} assume !#t~short17; {127#false} is VALID [2020-07-11 02:28:28,717 INFO L280 TraceCheckUtils]: 30: Hoare triple {127#false} assume !#t~short17; {127#false} is VALID [2020-07-11 02:28:28,717 INFO L280 TraceCheckUtils]: 31: Hoare triple {127#false} havoc #t~mem16; {127#false} is VALID [2020-07-11 02:28:28,717 INFO L280 TraceCheckUtils]: 32: Hoare triple {127#false} havoc #t~short17; {127#false} is VALID [2020-07-11 02:28:28,718 INFO L280 TraceCheckUtils]: 33: Hoare triple {127#false} assume ~start~0 <= ~j~0; {127#false} is VALID [2020-07-11 02:28:28,718 INFO L263 TraceCheckUtils]: 34: Hoare triple {127#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)); {126#true} is VALID [2020-07-11 02:28:28,719 INFO L280 TraceCheckUtils]: 35: Hoare triple {126#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {126#true} is VALID [2020-07-11 02:28:28,719 INFO L280 TraceCheckUtils]: 36: Hoare triple {126#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {126#true} is VALID [2020-07-11 02:28:28,720 INFO L280 TraceCheckUtils]: 37: Hoare triple {126#true} ~n := #in~n; {126#true} is VALID [2020-07-11 02:28:28,720 INFO L280 TraceCheckUtils]: 38: Hoare triple {126#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {126#true} is VALID [2020-07-11 02:28:28,720 INFO L280 TraceCheckUtils]: 39: Hoare triple {126#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {126#true} is VALID [2020-07-11 02:28:28,721 INFO L280 TraceCheckUtils]: 40: Hoare triple {126#true} havoc #t~ret0.base, #t~ret0.offset; {126#true} is VALID [2020-07-11 02:28:28,721 INFO L280 TraceCheckUtils]: 41: Hoare triple {126#true} assume true; {126#true} is VALID [2020-07-11 02:28:28,721 INFO L275 TraceCheckUtils]: 42: Hoare quadruple {126#true} {127#false} #201#return; {127#false} is VALID [2020-07-11 02:28:28,722 INFO L280 TraceCheckUtils]: 43: Hoare triple {127#false} havoc #t~ret19.base, #t~ret19.offset; {127#false} is VALID [2020-07-11 02:28:28,722 INFO L263 TraceCheckUtils]: 44: Hoare triple {127#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {127#false} is VALID [2020-07-11 02:28:28,723 INFO L280 TraceCheckUtils]: 45: Hoare triple {127#false} ~cond := #in~cond; {127#false} is VALID [2020-07-11 02:28:28,723 INFO L280 TraceCheckUtils]: 46: Hoare triple {127#false} assume 0 == ~cond; {127#false} is VALID [2020-07-11 02:28:28,723 INFO L280 TraceCheckUtils]: 47: Hoare triple {127#false} assume !false; {127#false} is VALID [2020-07-11 02:28:28,732 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-11 02:28:28,734 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [471012821] [2020-07-11 02:28:28,737 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:28,737 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2020-07-11 02:28:28,739 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [128957902] [2020-07-11 02:28:28,746 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 48 [2020-07-11 02:28:28,749 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:28,754 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states. [2020-07-11 02:28:28,835 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:28,836 INFO L459 AbstractCegarLoop]: Interpolant automaton has 3 states [2020-07-11 02:28:28,836 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:28,845 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2020-07-11 02:28:28,846 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2020-07-11 02:28:28,849 INFO L87 Difference]: Start difference. First operand 123 states. Second operand 3 states. [2020-07-11 02:28:29,476 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:29,477 INFO L93 Difference]: Finished difference Result 227 states and 257 transitions. [2020-07-11 02:28:29,477 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2020-07-11 02:28:29,477 INFO L78 Accepts]: Start accepts. Automaton has 3 states. Word has length 48 [2020-07-11 02:28:29,478 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:29,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-11 02:28:29,494 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 257 transitions. [2020-07-11 02:28:29,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 3 states. [2020-07-11 02:28:29,502 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 257 transitions. [2020-07-11 02:28:29,503 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 3 states and 257 transitions. [2020-07-11 02:28:29,833 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 257 edges. 257 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:29,851 INFO L225 Difference]: With dead ends: 227 [2020-07-11 02:28:29,852 INFO L226 Difference]: Without dead ends: 102 [2020-07-11 02:28:29,859 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-11 02:28:29,878 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 102 states. [2020-07-11 02:28:29,974 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 102 to 102. [2020-07-11 02:28:29,974 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:29,975 INFO L82 GeneralOperation]: Start isEquivalent. First operand 102 states. Second operand 102 states. [2020-07-11 02:28:29,976 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand 102 states. [2020-07-11 02:28:29,976 INFO L87 Difference]: Start difference. First operand 102 states. Second operand 102 states. [2020-07-11 02:28:29,984 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:29,984 INFO L93 Difference]: Finished difference Result 102 states and 111 transitions. [2020-07-11 02:28:29,985 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 111 transitions. [2020-07-11 02:28:29,986 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:29,986 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:29,986 INFO L74 IsIncluded]: Start isIncluded. First operand 102 states. Second operand 102 states. [2020-07-11 02:28:29,987 INFO L87 Difference]: Start difference. First operand 102 states. Second operand 102 states. [2020-07-11 02:28:29,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:29,995 INFO L93 Difference]: Finished difference Result 102 states and 111 transitions. [2020-07-11 02:28:29,995 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 111 transitions. [2020-07-11 02:28:29,996 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:29,996 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:29,997 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:29,997 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:29,997 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 102 states. [2020-07-11 02:28:30,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 102 states to 102 states and 111 transitions. [2020-07-11 02:28:30,005 INFO L78 Accepts]: Start accepts. Automaton has 102 states and 111 transitions. Word has length 48 [2020-07-11 02:28:30,005 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:30,006 INFO L479 AbstractCegarLoop]: Abstraction has 102 states and 111 transitions. [2020-07-11 02:28:30,006 INFO L480 AbstractCegarLoop]: Interpolant automaton has 3 states. [2020-07-11 02:28:30,006 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 102 states and 111 transitions. [2020-07-11 02:28:30,122 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:30,122 INFO L276 IsEmpty]: Start isEmpty. Operand 102 states and 111 transitions. [2020-07-11 02:28:30,124 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2020-07-11 02:28:30,125 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:30,125 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] [2020-07-11 02:28:30,125 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2020-07-11 02:28:30,126 INFO L427 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:30,126 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:30,126 INFO L82 PathProgramCache]: Analyzing trace with hash 1227098254, now seen corresponding path program 1 times [2020-07-11 02:28:30,127 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:30,127 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1219084817] [2020-07-11 02:28:30,127 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:30,162 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:30,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:30,237 INFO L280 TraceCheckUtils]: 0: Hoare triple {1022#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1006#true} is VALID [2020-07-11 02:28:30,238 INFO L280 TraceCheckUtils]: 1: Hoare triple {1006#true} #valid := #valid[0 := 0]; {1006#true} is VALID [2020-07-11 02:28:30,238 INFO L280 TraceCheckUtils]: 2: Hoare triple {1006#true} assume 0 < #StackHeapBarrier; {1006#true} is VALID [2020-07-11 02:28:30,238 INFO L280 TraceCheckUtils]: 3: Hoare triple {1006#true} assume true; {1006#true} is VALID [2020-07-11 02:28:30,239 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1006#true} {1006#true} #205#return; {1006#true} is VALID [2020-07-11 02:28:30,241 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:30,249 INFO L280 TraceCheckUtils]: 0: Hoare triple {1006#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {1006#true} is VALID [2020-07-11 02:28:30,250 INFO L280 TraceCheckUtils]: 1: Hoare triple {1006#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {1006#true} is VALID [2020-07-11 02:28:30,250 INFO L280 TraceCheckUtils]: 2: Hoare triple {1006#true} ~n := #in~n; {1006#true} is VALID [2020-07-11 02:28:30,250 INFO L280 TraceCheckUtils]: 3: Hoare triple {1006#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {1006#true} is VALID [2020-07-11 02:28:30,251 INFO L280 TraceCheckUtils]: 4: Hoare triple {1006#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {1006#true} is VALID [2020-07-11 02:28:30,251 INFO L280 TraceCheckUtils]: 5: Hoare triple {1006#true} havoc #t~ret0.base, #t~ret0.offset; {1006#true} is VALID [2020-07-11 02:28:30,251 INFO L280 TraceCheckUtils]: 6: Hoare triple {1006#true} assume true; {1006#true} is VALID [2020-07-11 02:28:30,252 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {1006#true} {1007#false} #201#return; {1007#false} is VALID [2020-07-11 02:28:30,253 INFO L263 TraceCheckUtils]: 0: Hoare triple {1006#true} call ULTIMATE.init(); {1022#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:30,253 INFO L280 TraceCheckUtils]: 1: Hoare triple {1022#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1006#true} is VALID [2020-07-11 02:28:30,254 INFO L280 TraceCheckUtils]: 2: Hoare triple {1006#true} #valid := #valid[0 := 0]; {1006#true} is VALID [2020-07-11 02:28:30,254 INFO L280 TraceCheckUtils]: 3: Hoare triple {1006#true} assume 0 < #StackHeapBarrier; {1006#true} is VALID [2020-07-11 02:28:30,254 INFO L280 TraceCheckUtils]: 4: Hoare triple {1006#true} assume true; {1006#true} is VALID [2020-07-11 02:28:30,254 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1006#true} {1006#true} #205#return; {1006#true} is VALID [2020-07-11 02:28:30,255 INFO L263 TraceCheckUtils]: 6: Hoare triple {1006#true} call #t~ret21 := main(); {1006#true} is VALID [2020-07-11 02:28:30,255 INFO L280 TraceCheckUtils]: 7: Hoare triple {1006#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {1006#true} is VALID [2020-07-11 02:28:30,255 INFO L280 TraceCheckUtils]: 8: Hoare triple {1006#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {1006#true} is VALID [2020-07-11 02:28:30,256 INFO L263 TraceCheckUtils]: 9: Hoare triple {1006#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {1006#true} is VALID [2020-07-11 02:28:30,256 INFO L280 TraceCheckUtils]: 10: Hoare triple {1006#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {1006#true} is VALID [2020-07-11 02:28:30,256 INFO L280 TraceCheckUtils]: 11: Hoare triple {1006#true} ~start~0 := 0; {1006#true} is VALID [2020-07-11 02:28:30,256 INFO L280 TraceCheckUtils]: 12: Hoare triple {1006#true} ~i~0 := -1; {1006#true} is VALID [2020-07-11 02:28:30,257 INFO L280 TraceCheckUtils]: 13: Hoare triple {1006#true} ~j~0 := -1; {1006#true} is VALID [2020-07-11 02:28:30,257 INFO L280 TraceCheckUtils]: 14: Hoare triple {1006#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {1006#true} is VALID [2020-07-11 02:28:30,257 INFO L280 TraceCheckUtils]: 15: Hoare triple {1006#true} assume !(~str.base == 0 && ~str.offset == 0); {1006#true} is VALID [2020-07-11 02:28:30,258 INFO L280 TraceCheckUtils]: 16: Hoare triple {1006#true} #t~post2 := ~i~0; {1006#true} is VALID [2020-07-11 02:28:30,258 INFO L280 TraceCheckUtils]: 17: Hoare triple {1006#true} ~i~0 := 1 + #t~post2; {1006#true} is VALID [2020-07-11 02:28:30,258 INFO L280 TraceCheckUtils]: 18: Hoare triple {1006#true} havoc #t~post2; {1006#true} is VALID [2020-07-11 02:28:30,259 INFO L280 TraceCheckUtils]: 19: Hoare triple {1006#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {1006#true} is VALID [2020-07-11 02:28:30,259 INFO L280 TraceCheckUtils]: 20: Hoare triple {1006#true} #t~switch4 := 0 == #t~mem3; {1006#true} is VALID [2020-07-11 02:28:30,259 INFO L280 TraceCheckUtils]: 21: Hoare triple {1006#true} assume #t~switch4; {1006#true} is VALID [2020-07-11 02:28:30,259 INFO L280 TraceCheckUtils]: 22: Hoare triple {1006#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {1006#true} is VALID [2020-07-11 02:28:30,260 INFO L280 TraceCheckUtils]: 23: Hoare triple {1006#true} #t~short7 := 32 == #t~mem5; {1006#true} is VALID [2020-07-11 02:28:30,261 INFO L280 TraceCheckUtils]: 24: Hoare triple {1006#true} assume #t~short7; {1013#|parse_expression_list_#t~short7|} is VALID [2020-07-11 02:28:30,261 INFO L280 TraceCheckUtils]: 25: Hoare triple {1013#|parse_expression_list_#t~short7|} assume !#t~short7; {1007#false} is VALID [2020-07-11 02:28:30,261 INFO L280 TraceCheckUtils]: 26: Hoare triple {1007#false} havoc #t~mem5; {1007#false} is VALID [2020-07-11 02:28:30,262 INFO L280 TraceCheckUtils]: 27: Hoare triple {1007#false} havoc #t~short7; {1007#false} is VALID [2020-07-11 02:28:30,262 INFO L280 TraceCheckUtils]: 28: Hoare triple {1007#false} havoc #t~mem6; {1007#false} is VALID [2020-07-11 02:28:30,262 INFO L280 TraceCheckUtils]: 29: Hoare triple {1007#false} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {1007#false} is VALID [2020-07-11 02:28:30,263 INFO L280 TraceCheckUtils]: 30: Hoare triple {1007#false} assume !(34 == #t~mem9); {1007#false} is VALID [2020-07-11 02:28:30,263 INFO L280 TraceCheckUtils]: 31: Hoare triple {1007#false} havoc #t~mem9; {1007#false} is VALID [2020-07-11 02:28:30,263 INFO L280 TraceCheckUtils]: 32: Hoare triple {1007#false} ~j~0 := ~i~0 - 1; {1007#false} is VALID [2020-07-11 02:28:30,264 INFO L280 TraceCheckUtils]: 33: Hoare triple {1007#false} #t~short14 := 0 < ~j~0; {1007#false} is VALID [2020-07-11 02:28:30,264 INFO L280 TraceCheckUtils]: 34: Hoare triple {1007#false} assume !#t~short14; {1007#false} is VALID [2020-07-11 02:28:30,264 INFO L280 TraceCheckUtils]: 35: Hoare triple {1007#false} assume !#t~short14; {1007#false} is VALID [2020-07-11 02:28:30,265 INFO L280 TraceCheckUtils]: 36: Hoare triple {1007#false} havoc #t~mem12; {1007#false} is VALID [2020-07-11 02:28:30,265 INFO L280 TraceCheckUtils]: 37: Hoare triple {1007#false} havoc #t~mem11; {1007#false} is VALID [2020-07-11 02:28:30,265 INFO L280 TraceCheckUtils]: 38: Hoare triple {1007#false} havoc #t~short13; {1007#false} is VALID [2020-07-11 02:28:30,265 INFO L280 TraceCheckUtils]: 39: Hoare triple {1007#false} havoc #t~short14; {1007#false} is VALID [2020-07-11 02:28:30,266 INFO L280 TraceCheckUtils]: 40: Hoare triple {1007#false} #t~short17 := 0 < ~j~0; {1007#false} is VALID [2020-07-11 02:28:30,266 INFO L280 TraceCheckUtils]: 41: Hoare triple {1007#false} assume !#t~short17; {1007#false} is VALID [2020-07-11 02:28:30,266 INFO L280 TraceCheckUtils]: 42: Hoare triple {1007#false} assume !#t~short17; {1007#false} is VALID [2020-07-11 02:28:30,267 INFO L280 TraceCheckUtils]: 43: Hoare triple {1007#false} havoc #t~mem16; {1007#false} is VALID [2020-07-11 02:28:30,267 INFO L280 TraceCheckUtils]: 44: Hoare triple {1007#false} havoc #t~short17; {1007#false} is VALID [2020-07-11 02:28:30,267 INFO L280 TraceCheckUtils]: 45: Hoare triple {1007#false} assume ~start~0 <= ~j~0; {1007#false} is VALID [2020-07-11 02:28:30,267 INFO L263 TraceCheckUtils]: 46: Hoare triple {1007#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)); {1006#true} is VALID [2020-07-11 02:28:30,268 INFO L280 TraceCheckUtils]: 47: Hoare triple {1006#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {1006#true} is VALID [2020-07-11 02:28:30,268 INFO L280 TraceCheckUtils]: 48: Hoare triple {1006#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {1006#true} is VALID [2020-07-11 02:28:30,268 INFO L280 TraceCheckUtils]: 49: Hoare triple {1006#true} ~n := #in~n; {1006#true} is VALID [2020-07-11 02:28:30,269 INFO L280 TraceCheckUtils]: 50: Hoare triple {1006#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {1006#true} is VALID [2020-07-11 02:28:30,269 INFO L280 TraceCheckUtils]: 51: Hoare triple {1006#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {1006#true} is VALID [2020-07-11 02:28:30,269 INFO L280 TraceCheckUtils]: 52: Hoare triple {1006#true} havoc #t~ret0.base, #t~ret0.offset; {1006#true} is VALID [2020-07-11 02:28:30,270 INFO L280 TraceCheckUtils]: 53: Hoare triple {1006#true} assume true; {1006#true} is VALID [2020-07-11 02:28:30,270 INFO L275 TraceCheckUtils]: 54: Hoare quadruple {1006#true} {1007#false} #201#return; {1007#false} is VALID [2020-07-11 02:28:30,270 INFO L280 TraceCheckUtils]: 55: Hoare triple {1007#false} havoc #t~ret19.base, #t~ret19.offset; {1007#false} is VALID [2020-07-11 02:28:30,270 INFO L263 TraceCheckUtils]: 56: Hoare triple {1007#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {1007#false} is VALID [2020-07-11 02:28:30,271 INFO L280 TraceCheckUtils]: 57: Hoare triple {1007#false} ~cond := #in~cond; {1007#false} is VALID [2020-07-11 02:28:30,271 INFO L280 TraceCheckUtils]: 58: Hoare triple {1007#false} assume 0 == ~cond; {1007#false} is VALID [2020-07-11 02:28:30,271 INFO L280 TraceCheckUtils]: 59: Hoare triple {1007#false} assume !false; {1007#false} is VALID [2020-07-11 02:28:30,275 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-11 02:28:30,275 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1219084817] [2020-07-11 02:28:30,276 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:30,276 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-11 02:28:30,276 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1789009315] [2020-07-11 02:28:30,278 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 60 [2020-07-11 02:28:30,279 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:30,279 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-11 02:28:30,332 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:30,332 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-11 02:28:30,333 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:30,333 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-11 02:28:30,333 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-11 02:28:30,334 INFO L87 Difference]: Start difference. First operand 102 states and 111 transitions. Second operand 4 states. [2020-07-11 02:28:30,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:30,905 INFO L93 Difference]: Finished difference Result 189 states and 208 transitions. [2020-07-11 02:28:30,905 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-11 02:28:30,905 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 60 [2020-07-11 02:28:30,906 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:30,906 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-11 02:28:30,911 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 208 transitions. [2020-07-11 02:28:30,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-11 02:28:30,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 208 transitions. [2020-07-11 02:28:30,916 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 208 transitions. [2020-07-11 02:28:31,118 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:31,122 INFO L225 Difference]: With dead ends: 189 [2020-07-11 02:28:31,122 INFO L226 Difference]: Without dead ends: 103 [2020-07-11 02:28:31,124 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-11 02:28:31,124 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 103 states. [2020-07-11 02:28:31,194 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 103 to 103. [2020-07-11 02:28:31,194 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:31,195 INFO L82 GeneralOperation]: Start isEquivalent. First operand 103 states. Second operand 103 states. [2020-07-11 02:28:31,195 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand 103 states. [2020-07-11 02:28:31,195 INFO L87 Difference]: Start difference. First operand 103 states. Second operand 103 states. [2020-07-11 02:28:31,203 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:31,203 INFO L93 Difference]: Finished difference Result 103 states and 112 transitions. [2020-07-11 02:28:31,203 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 112 transitions. [2020-07-11 02:28:31,204 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:31,204 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:31,205 INFO L74 IsIncluded]: Start isIncluded. First operand 103 states. Second operand 103 states. [2020-07-11 02:28:31,205 INFO L87 Difference]: Start difference. First operand 103 states. Second operand 103 states. [2020-07-11 02:28:31,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:31,212 INFO L93 Difference]: Finished difference Result 103 states and 112 transitions. [2020-07-11 02:28:31,213 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 112 transitions. [2020-07-11 02:28:31,214 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:31,214 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:31,214 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:31,214 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:31,214 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 103 states. [2020-07-11 02:28:31,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 103 states to 103 states and 112 transitions. [2020-07-11 02:28:31,221 INFO L78 Accepts]: Start accepts. Automaton has 103 states and 112 transitions. Word has length 60 [2020-07-11 02:28:31,221 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:31,222 INFO L479 AbstractCegarLoop]: Abstraction has 103 states and 112 transitions. [2020-07-11 02:28:31,222 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-11 02:28:31,222 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 103 states and 112 transitions. [2020-07-11 02:28:31,333 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-11 02:28:31,334 INFO L276 IsEmpty]: Start isEmpty. Operand 103 states and 112 transitions. [2020-07-11 02:28:31,335 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 63 [2020-07-11 02:28:31,336 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:31,336 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] [2020-07-11 02:28:31,336 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2020-07-11 02:28:31,336 INFO L427 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:31,337 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:31,337 INFO L82 PathProgramCache]: Analyzing trace with hash 1578191403, now seen corresponding path program 1 times [2020-07-11 02:28:31,337 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:31,337 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1020730448] [2020-07-11 02:28:31,337 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:31,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:31,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:31,528 INFO L280 TraceCheckUtils]: 0: Hoare triple {1835#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1815#true} is VALID [2020-07-11 02:28:31,529 INFO L280 TraceCheckUtils]: 1: Hoare triple {1815#true} #valid := #valid[0 := 0]; {1815#true} is VALID [2020-07-11 02:28:31,529 INFO L280 TraceCheckUtils]: 2: Hoare triple {1815#true} assume 0 < #StackHeapBarrier; {1815#true} is VALID [2020-07-11 02:28:31,529 INFO L280 TraceCheckUtils]: 3: Hoare triple {1815#true} assume true; {1815#true} is VALID [2020-07-11 02:28:31,530 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {1815#true} {1815#true} #205#return; {1815#true} is VALID [2020-07-11 02:28:31,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:31,536 INFO L280 TraceCheckUtils]: 0: Hoare triple {1815#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {1815#true} is VALID [2020-07-11 02:28:31,536 INFO L280 TraceCheckUtils]: 1: Hoare triple {1815#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {1815#true} is VALID [2020-07-11 02:28:31,536 INFO L280 TraceCheckUtils]: 2: Hoare triple {1815#true} ~n := #in~n; {1815#true} is VALID [2020-07-11 02:28:31,537 INFO L280 TraceCheckUtils]: 3: Hoare triple {1815#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {1815#true} is VALID [2020-07-11 02:28:31,537 INFO L280 TraceCheckUtils]: 4: Hoare triple {1815#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {1815#true} is VALID [2020-07-11 02:28:31,537 INFO L280 TraceCheckUtils]: 5: Hoare triple {1815#true} havoc #t~ret0.base, #t~ret0.offset; {1815#true} is VALID [2020-07-11 02:28:31,537 INFO L280 TraceCheckUtils]: 6: Hoare triple {1815#true} assume true; {1815#true} is VALID [2020-07-11 02:28:31,538 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {1815#true} {1816#false} #201#return; {1816#false} is VALID [2020-07-11 02:28:31,539 INFO L263 TraceCheckUtils]: 0: Hoare triple {1815#true} call ULTIMATE.init(); {1835#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:31,539 INFO L280 TraceCheckUtils]: 1: Hoare triple {1835#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {1815#true} is VALID [2020-07-11 02:28:31,539 INFO L280 TraceCheckUtils]: 2: Hoare triple {1815#true} #valid := #valid[0 := 0]; {1815#true} is VALID [2020-07-11 02:28:31,540 INFO L280 TraceCheckUtils]: 3: Hoare triple {1815#true} assume 0 < #StackHeapBarrier; {1815#true} is VALID [2020-07-11 02:28:31,540 INFO L280 TraceCheckUtils]: 4: Hoare triple {1815#true} assume true; {1815#true} is VALID [2020-07-11 02:28:31,540 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {1815#true} {1815#true} #205#return; {1815#true} is VALID [2020-07-11 02:28:31,540 INFO L263 TraceCheckUtils]: 6: Hoare triple {1815#true} call #t~ret21 := main(); {1815#true} is VALID [2020-07-11 02:28:31,541 INFO L280 TraceCheckUtils]: 7: Hoare triple {1815#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {1815#true} is VALID [2020-07-11 02:28:31,541 INFO L280 TraceCheckUtils]: 8: Hoare triple {1815#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {1815#true} is VALID [2020-07-11 02:28:31,541 INFO L263 TraceCheckUtils]: 9: Hoare triple {1815#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {1815#true} is VALID [2020-07-11 02:28:31,541 INFO L280 TraceCheckUtils]: 10: Hoare triple {1815#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {1815#true} is VALID [2020-07-11 02:28:31,542 INFO L280 TraceCheckUtils]: 11: Hoare triple {1815#true} ~start~0 := 0; {1822#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:31,543 INFO L280 TraceCheckUtils]: 12: Hoare triple {1822#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {1823#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:31,544 INFO L280 TraceCheckUtils]: 13: Hoare triple {1823#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} ~j~0 := -1; {1823#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:31,545 INFO L280 TraceCheckUtils]: 14: Hoare triple {1823#(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: L49 {1823#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:31,546 INFO L280 TraceCheckUtils]: 15: Hoare triple {1823#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} assume !(~str.base == 0 && ~str.offset == 0); {1823#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:31,546 INFO L280 TraceCheckUtils]: 16: Hoare triple {1823#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} #t~post2 := ~i~0; {1824#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-11 02:28:31,547 INFO L280 TraceCheckUtils]: 17: Hoare triple {1824#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} ~i~0 := 1 + #t~post2; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,548 INFO L280 TraceCheckUtils]: 18: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~post2; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,549 INFO L280 TraceCheckUtils]: 19: Hoare triple {1825#(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: L53 {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,550 INFO L280 TraceCheckUtils]: 20: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~switch4 := 0 == #t~mem3; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,551 INFO L280 TraceCheckUtils]: 21: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume #t~switch4; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,552 INFO L280 TraceCheckUtils]: 22: Hoare triple {1825#(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: L55-17 {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,562 INFO L280 TraceCheckUtils]: 23: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 32 == #t~mem5; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,563 INFO L280 TraceCheckUtils]: 24: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,563 INFO L280 TraceCheckUtils]: 25: Hoare triple {1825#(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: L55-4 {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,564 INFO L280 TraceCheckUtils]: 26: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 9 == #t~mem6; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,565 INFO L280 TraceCheckUtils]: 27: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,566 INFO L280 TraceCheckUtils]: 28: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem5; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,566 INFO L280 TraceCheckUtils]: 29: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~short7; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,567 INFO L280 TraceCheckUtils]: 30: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem6; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,568 INFO L280 TraceCheckUtils]: 31: Hoare triple {1825#(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: L55-18 {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,569 INFO L280 TraceCheckUtils]: 32: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !(34 == #t~mem9); {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,569 INFO L280 TraceCheckUtils]: 33: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem9; {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:31,570 INFO L280 TraceCheckUtils]: 34: Hoare triple {1825#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} ~j~0 := ~i~0 - 1; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,572 INFO L280 TraceCheckUtils]: 35: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short14 := 0 < ~j~0; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,573 INFO L280 TraceCheckUtils]: 36: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short14; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,575 INFO L280 TraceCheckUtils]: 37: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short14; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,576 INFO L280 TraceCheckUtils]: 38: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem12; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,577 INFO L280 TraceCheckUtils]: 39: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem11; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,578 INFO L280 TraceCheckUtils]: 40: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short13; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,580 INFO L280 TraceCheckUtils]: 41: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short14; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,581 INFO L280 TraceCheckUtils]: 42: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short17 := 0 < ~j~0; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,582 INFO L280 TraceCheckUtils]: 43: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short17; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,582 INFO L280 TraceCheckUtils]: 44: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short17; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,586 INFO L280 TraceCheckUtils]: 45: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem16; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,587 INFO L280 TraceCheckUtils]: 46: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short17; {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:31,588 INFO L280 TraceCheckUtils]: 47: Hoare triple {1826#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume ~start~0 <= ~j~0; {1816#false} is VALID [2020-07-11 02:28:31,588 INFO L263 TraceCheckUtils]: 48: Hoare triple {1816#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)); {1815#true} is VALID [2020-07-11 02:28:31,588 INFO L280 TraceCheckUtils]: 49: Hoare triple {1815#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {1815#true} is VALID [2020-07-11 02:28:31,588 INFO L280 TraceCheckUtils]: 50: Hoare triple {1815#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {1815#true} is VALID [2020-07-11 02:28:31,588 INFO L280 TraceCheckUtils]: 51: Hoare triple {1815#true} ~n := #in~n; {1815#true} is VALID [2020-07-11 02:28:31,589 INFO L280 TraceCheckUtils]: 52: Hoare triple {1815#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {1815#true} is VALID [2020-07-11 02:28:31,589 INFO L280 TraceCheckUtils]: 53: Hoare triple {1815#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {1815#true} is VALID [2020-07-11 02:28:31,589 INFO L280 TraceCheckUtils]: 54: Hoare triple {1815#true} havoc #t~ret0.base, #t~ret0.offset; {1815#true} is VALID [2020-07-11 02:28:31,589 INFO L280 TraceCheckUtils]: 55: Hoare triple {1815#true} assume true; {1815#true} is VALID [2020-07-11 02:28:31,590 INFO L275 TraceCheckUtils]: 56: Hoare quadruple {1815#true} {1816#false} #201#return; {1816#false} is VALID [2020-07-11 02:28:31,590 INFO L280 TraceCheckUtils]: 57: Hoare triple {1816#false} havoc #t~ret19.base, #t~ret19.offset; {1816#false} is VALID [2020-07-11 02:28:31,590 INFO L263 TraceCheckUtils]: 58: Hoare triple {1816#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {1816#false} is VALID [2020-07-11 02:28:31,590 INFO L280 TraceCheckUtils]: 59: Hoare triple {1816#false} ~cond := #in~cond; {1816#false} is VALID [2020-07-11 02:28:31,591 INFO L280 TraceCheckUtils]: 60: Hoare triple {1816#false} assume 0 == ~cond; {1816#false} is VALID [2020-07-11 02:28:31,591 INFO L280 TraceCheckUtils]: 61: Hoare triple {1816#false} assume !false; {1816#false} is VALID [2020-07-11 02:28:31,599 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-11 02:28:31,600 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1020730448] [2020-07-11 02:28:31,600 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:31,600 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-11 02:28:31,601 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1099704239] [2020-07-11 02:28:31,601 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 62 [2020-07-11 02:28:31,602 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:31,602 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-11 02:28:31,687 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:31,687 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-11 02:28:31,687 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:31,688 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-11 02:28:31,688 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=38, Unknown=0, NotChecked=0, Total=56 [2020-07-11 02:28:31,688 INFO L87 Difference]: Start difference. First operand 103 states and 112 transitions. Second operand 8 states. [2020-07-11 02:28:33,497 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:33,498 INFO L93 Difference]: Finished difference Result 365 states and 410 transitions. [2020-07-11 02:28:33,498 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2020-07-11 02:28:33,498 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 62 [2020-07-11 02:28:33,498 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:33,499 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-11 02:28:33,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 406 transitions. [2020-07-11 02:28:33,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-11 02:28:33,515 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 406 transitions. [2020-07-11 02:28:33,515 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states and 406 transitions. [2020-07-11 02:28:33,971 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 406 edges. 406 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:33,980 INFO L225 Difference]: With dead ends: 365 [2020-07-11 02:28:33,981 INFO L226 Difference]: Without dead ends: 275 [2020-07-11 02:28:33,982 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=69, Invalid=141, Unknown=0, NotChecked=0, Total=210 [2020-07-11 02:28:33,983 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 275 states. [2020-07-11 02:28:34,144 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 275 to 140. [2020-07-11 02:28:34,144 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:34,144 INFO L82 GeneralOperation]: Start isEquivalent. First operand 275 states. Second operand 140 states. [2020-07-11 02:28:34,145 INFO L74 IsIncluded]: Start isIncluded. First operand 275 states. Second operand 140 states. [2020-07-11 02:28:34,145 INFO L87 Difference]: Start difference. First operand 275 states. Second operand 140 states. [2020-07-11 02:28:34,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:34,160 INFO L93 Difference]: Finished difference Result 275 states and 310 transitions. [2020-07-11 02:28:34,160 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 310 transitions. [2020-07-11 02:28:34,161 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:34,161 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:34,161 INFO L74 IsIncluded]: Start isIncluded. First operand 140 states. Second operand 275 states. [2020-07-11 02:28:34,162 INFO L87 Difference]: Start difference. First operand 140 states. Second operand 275 states. [2020-07-11 02:28:34,174 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:34,174 INFO L93 Difference]: Finished difference Result 275 states and 310 transitions. [2020-07-11 02:28:34,174 INFO L276 IsEmpty]: Start isEmpty. Operand 275 states and 310 transitions. [2020-07-11 02:28:34,175 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:34,175 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:34,176 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:34,176 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:34,176 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 140 states. [2020-07-11 02:28:34,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 140 states to 140 states and 157 transitions. [2020-07-11 02:28:34,181 INFO L78 Accepts]: Start accepts. Automaton has 140 states and 157 transitions. Word has length 62 [2020-07-11 02:28:34,181 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:34,182 INFO L479 AbstractCegarLoop]: Abstraction has 140 states and 157 transitions. [2020-07-11 02:28:34,182 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-11 02:28:34,182 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 140 states and 157 transitions. [2020-07-11 02:28:34,361 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-11 02:28:34,362 INFO L276 IsEmpty]: Start isEmpty. Operand 140 states and 157 transitions. [2020-07-11 02:28:34,363 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2020-07-11 02:28:34,363 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:34,364 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] [2020-07-11 02:28:34,364 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2020-07-11 02:28:34,364 INFO L427 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:34,364 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:34,364 INFO L82 PathProgramCache]: Analyzing trace with hash 1116699365, now seen corresponding path program 1 times [2020-07-11 02:28:34,365 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:34,365 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1348678082] [2020-07-11 02:28:34,365 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:34,423 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:34,587 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:34,597 INFO L280 TraceCheckUtils]: 0: Hoare triple {3434#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3412#true} is VALID [2020-07-11 02:28:34,597 INFO L280 TraceCheckUtils]: 1: Hoare triple {3412#true} #valid := #valid[0 := 0]; {3412#true} is VALID [2020-07-11 02:28:34,597 INFO L280 TraceCheckUtils]: 2: Hoare triple {3412#true} assume 0 < #StackHeapBarrier; {3412#true} is VALID [2020-07-11 02:28:34,598 INFO L280 TraceCheckUtils]: 3: Hoare triple {3412#true} assume true; {3412#true} is VALID [2020-07-11 02:28:34,598 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {3412#true} {3412#true} #205#return; {3412#true} is VALID [2020-07-11 02:28:34,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:34,608 INFO L280 TraceCheckUtils]: 0: Hoare triple {3412#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {3412#true} is VALID [2020-07-11 02:28:34,608 INFO L280 TraceCheckUtils]: 1: Hoare triple {3412#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {3412#true} is VALID [2020-07-11 02:28:34,608 INFO L280 TraceCheckUtils]: 2: Hoare triple {3412#true} ~n := #in~n; {3412#true} is VALID [2020-07-11 02:28:34,609 INFO L280 TraceCheckUtils]: 3: Hoare triple {3412#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {3412#true} is VALID [2020-07-11 02:28:34,609 INFO L280 TraceCheckUtils]: 4: Hoare triple {3412#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {3412#true} is VALID [2020-07-11 02:28:34,609 INFO L280 TraceCheckUtils]: 5: Hoare triple {3412#true} havoc #t~ret0.base, #t~ret0.offset; {3412#true} is VALID [2020-07-11 02:28:34,609 INFO L280 TraceCheckUtils]: 6: Hoare triple {3412#true} assume true; {3412#true} is VALID [2020-07-11 02:28:34,609 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {3412#true} {3413#false} #201#return; {3413#false} is VALID [2020-07-11 02:28:34,610 INFO L263 TraceCheckUtils]: 0: Hoare triple {3412#true} call ULTIMATE.init(); {3434#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:34,610 INFO L280 TraceCheckUtils]: 1: Hoare triple {3434#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {3412#true} is VALID [2020-07-11 02:28:34,611 INFO L280 TraceCheckUtils]: 2: Hoare triple {3412#true} #valid := #valid[0 := 0]; {3412#true} is VALID [2020-07-11 02:28:34,611 INFO L280 TraceCheckUtils]: 3: Hoare triple {3412#true} assume 0 < #StackHeapBarrier; {3412#true} is VALID [2020-07-11 02:28:34,611 INFO L280 TraceCheckUtils]: 4: Hoare triple {3412#true} assume true; {3412#true} is VALID [2020-07-11 02:28:34,611 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {3412#true} {3412#true} #205#return; {3412#true} is VALID [2020-07-11 02:28:34,611 INFO L263 TraceCheckUtils]: 6: Hoare triple {3412#true} call #t~ret21 := main(); {3412#true} is VALID [2020-07-11 02:28:34,611 INFO L280 TraceCheckUtils]: 7: Hoare triple {3412#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {3412#true} is VALID [2020-07-11 02:28:34,612 INFO L280 TraceCheckUtils]: 8: Hoare triple {3412#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {3412#true} is VALID [2020-07-11 02:28:34,612 INFO L263 TraceCheckUtils]: 9: Hoare triple {3412#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {3412#true} is VALID [2020-07-11 02:28:34,612 INFO L280 TraceCheckUtils]: 10: Hoare triple {3412#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {3412#true} is VALID [2020-07-11 02:28:34,613 INFO L280 TraceCheckUtils]: 11: Hoare triple {3412#true} ~start~0 := 0; {3419#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,613 INFO L280 TraceCheckUtils]: 12: Hoare triple {3419#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {3420#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:34,614 INFO L280 TraceCheckUtils]: 13: Hoare triple {3420#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} ~j~0 := -1; {3420#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:34,614 INFO L280 TraceCheckUtils]: 14: Hoare triple {3420#(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: L49 {3420#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:34,615 INFO L280 TraceCheckUtils]: 15: Hoare triple {3420#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} assume !(~str.base == 0 && ~str.offset == 0); {3420#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:34,616 INFO L280 TraceCheckUtils]: 16: Hoare triple {3420#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} #t~post2 := ~i~0; {3421#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-11 02:28:34,616 INFO L280 TraceCheckUtils]: 17: Hoare triple {3421#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} ~i~0 := 1 + #t~post2; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,617 INFO L280 TraceCheckUtils]: 18: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~post2; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,618 INFO L280 TraceCheckUtils]: 19: Hoare triple {3422#(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: L53 {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,618 INFO L280 TraceCheckUtils]: 20: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~switch4 := 0 == #t~mem3; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,619 INFO L280 TraceCheckUtils]: 21: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume #t~switch4; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,620 INFO L280 TraceCheckUtils]: 22: Hoare triple {3422#(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: L55-17 {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,621 INFO L280 TraceCheckUtils]: 23: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 32 == #t~mem5; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,621 INFO L280 TraceCheckUtils]: 24: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,622 INFO L280 TraceCheckUtils]: 25: Hoare triple {3422#(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: L55-4 {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,622 INFO L280 TraceCheckUtils]: 26: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 9 == #t~mem6; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,623 INFO L280 TraceCheckUtils]: 27: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,624 INFO L280 TraceCheckUtils]: 28: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem5; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,625 INFO L280 TraceCheckUtils]: 29: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~short7; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,632 INFO L280 TraceCheckUtils]: 30: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem6; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,634 INFO L280 TraceCheckUtils]: 31: Hoare triple {3422#(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: L55-18 {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,637 INFO L280 TraceCheckUtils]: 32: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume 34 == #t~mem9; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,642 INFO L280 TraceCheckUtils]: 33: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem9; {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,644 INFO L280 TraceCheckUtils]: 34: Hoare triple {3422#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~post10 := ~start~0; {3423#(and (= 0 |parse_expression_list_#t~post10|) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:34,644 INFO L280 TraceCheckUtils]: 35: Hoare triple {3423#(and (= 0 |parse_expression_list_#t~post10|) (<= parse_expression_list_~i~0 0))} ~start~0 := 1 + #t~post10; {3424#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,645 INFO L280 TraceCheckUtils]: 36: Hoare triple {3424#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} havoc #t~post10; {3424#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,647 INFO L280 TraceCheckUtils]: 37: Hoare triple {3424#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,648 INFO L280 TraceCheckUtils]: 38: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,648 INFO L280 TraceCheckUtils]: 39: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,655 INFO L280 TraceCheckUtils]: 40: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,656 INFO L280 TraceCheckUtils]: 41: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem12; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,656 INFO L280 TraceCheckUtils]: 42: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem11; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,657 INFO L280 TraceCheckUtils]: 43: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short13; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,657 INFO L280 TraceCheckUtils]: 44: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short14; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,658 INFO L280 TraceCheckUtils]: 45: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,658 INFO L280 TraceCheckUtils]: 46: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short17; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,659 INFO L280 TraceCheckUtils]: 47: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short17; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,659 INFO L280 TraceCheckUtils]: 48: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem16; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,660 INFO L280 TraceCheckUtils]: 49: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short17; {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:34,661 INFO L280 TraceCheckUtils]: 50: Hoare triple {3425#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {3413#false} is VALID [2020-07-11 02:28:34,661 INFO L263 TraceCheckUtils]: 51: Hoare triple {3413#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)); {3412#true} is VALID [2020-07-11 02:28:34,661 INFO L280 TraceCheckUtils]: 52: Hoare triple {3412#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {3412#true} is VALID [2020-07-11 02:28:34,661 INFO L280 TraceCheckUtils]: 53: Hoare triple {3412#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {3412#true} is VALID [2020-07-11 02:28:34,662 INFO L280 TraceCheckUtils]: 54: Hoare triple {3412#true} ~n := #in~n; {3412#true} is VALID [2020-07-11 02:28:34,662 INFO L280 TraceCheckUtils]: 55: Hoare triple {3412#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {3412#true} is VALID [2020-07-11 02:28:34,662 INFO L280 TraceCheckUtils]: 56: Hoare triple {3412#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {3412#true} is VALID [2020-07-11 02:28:34,662 INFO L280 TraceCheckUtils]: 57: Hoare triple {3412#true} havoc #t~ret0.base, #t~ret0.offset; {3412#true} is VALID [2020-07-11 02:28:34,663 INFO L280 TraceCheckUtils]: 58: Hoare triple {3412#true} assume true; {3412#true} is VALID [2020-07-11 02:28:34,663 INFO L275 TraceCheckUtils]: 59: Hoare quadruple {3412#true} {3413#false} #201#return; {3413#false} is VALID [2020-07-11 02:28:34,663 INFO L280 TraceCheckUtils]: 60: Hoare triple {3413#false} havoc #t~ret19.base, #t~ret19.offset; {3413#false} is VALID [2020-07-11 02:28:34,663 INFO L263 TraceCheckUtils]: 61: Hoare triple {3413#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {3413#false} is VALID [2020-07-11 02:28:34,664 INFO L280 TraceCheckUtils]: 62: Hoare triple {3413#false} ~cond := #in~cond; {3413#false} is VALID [2020-07-11 02:28:34,664 INFO L280 TraceCheckUtils]: 63: Hoare triple {3413#false} assume 0 == ~cond; {3413#false} is VALID [2020-07-11 02:28:34,664 INFO L280 TraceCheckUtils]: 64: Hoare triple {3413#false} assume !false; {3413#false} is VALID [2020-07-11 02:28:34,675 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-11 02:28:34,675 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1348678082] [2020-07-11 02:28:34,675 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:34,675 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2020-07-11 02:28:34,676 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [228053728] [2020-07-11 02:28:34,676 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 65 [2020-07-11 02:28:34,677 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:34,677 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-11 02:28:34,746 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:34,746 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-11 02:28:34,746 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:34,747 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-11 02:28:34,747 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=68, Unknown=0, NotChecked=0, Total=90 [2020-07-11 02:28:34,747 INFO L87 Difference]: Start difference. First operand 140 states and 157 transitions. Second operand 10 states. [2020-07-11 02:28:36,848 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:36,849 INFO L93 Difference]: Finished difference Result 430 states and 486 transitions. [2020-07-11 02:28:36,849 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2020-07-11 02:28:36,849 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 65 [2020-07-11 02:28:36,849 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:36,850 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-11 02:28:36,857 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 460 transitions. [2020-07-11 02:28:36,857 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-11 02:28:36,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 460 transitions. [2020-07-11 02:28:36,864 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 460 transitions. [2020-07-11 02:28:37,390 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 460 edges. 460 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:37,402 INFO L225 Difference]: With dead ends: 430 [2020-07-11 02:28:37,402 INFO L226 Difference]: Without dead ends: 340 [2020-07-11 02:28:37,404 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 43 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=60, Invalid=212, Unknown=0, NotChecked=0, Total=272 [2020-07-11 02:28:37,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 340 states. [2020-07-11 02:28:37,610 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 340 to 144. [2020-07-11 02:28:37,611 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:37,611 INFO L82 GeneralOperation]: Start isEquivalent. First operand 340 states. Second operand 144 states. [2020-07-11 02:28:37,611 INFO L74 IsIncluded]: Start isIncluded. First operand 340 states. Second operand 144 states. [2020-07-11 02:28:37,611 INFO L87 Difference]: Start difference. First operand 340 states. Second operand 144 states. [2020-07-11 02:28:37,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:37,626 INFO L93 Difference]: Finished difference Result 340 states and 386 transitions. [2020-07-11 02:28:37,626 INFO L276 IsEmpty]: Start isEmpty. Operand 340 states and 386 transitions. [2020-07-11 02:28:37,627 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:37,627 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:37,628 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand 340 states. [2020-07-11 02:28:37,628 INFO L87 Difference]: Start difference. First operand 144 states. Second operand 340 states. [2020-07-11 02:28:37,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:37,642 INFO L93 Difference]: Finished difference Result 340 states and 386 transitions. [2020-07-11 02:28:37,643 INFO L276 IsEmpty]: Start isEmpty. Operand 340 states and 386 transitions. [2020-07-11 02:28:37,644 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:37,644 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:37,644 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:37,644 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:37,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 144 states. [2020-07-11 02:28:37,649 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 144 states to 144 states and 161 transitions. [2020-07-11 02:28:37,649 INFO L78 Accepts]: Start accepts. Automaton has 144 states and 161 transitions. Word has length 65 [2020-07-11 02:28:37,649 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:37,649 INFO L479 AbstractCegarLoop]: Abstraction has 144 states and 161 transitions. [2020-07-11 02:28:37,650 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-11 02:28:37,650 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 144 states and 161 transitions. [2020-07-11 02:28:37,838 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:37,838 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 161 transitions. [2020-07-11 02:28:37,839 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 66 [2020-07-11 02:28:37,840 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:37,840 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] [2020-07-11 02:28:37,840 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2020-07-11 02:28:37,840 INFO L427 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:37,840 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:37,841 INFO L82 PathProgramCache]: Analyzing trace with hash 1492663361, now seen corresponding path program 1 times [2020-07-11 02:28:37,841 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:37,841 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [157806650] [2020-07-11 02:28:37,841 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:37,858 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:37,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:37,959 INFO L280 TraceCheckUtils]: 0: Hoare triple {5295#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5279#true} is VALID [2020-07-11 02:28:37,959 INFO L280 TraceCheckUtils]: 1: Hoare triple {5279#true} #valid := #valid[0 := 0]; {5279#true} is VALID [2020-07-11 02:28:37,960 INFO L280 TraceCheckUtils]: 2: Hoare triple {5279#true} assume 0 < #StackHeapBarrier; {5279#true} is VALID [2020-07-11 02:28:37,960 INFO L280 TraceCheckUtils]: 3: Hoare triple {5279#true} assume true; {5279#true} is VALID [2020-07-11 02:28:37,960 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {5279#true} {5279#true} #205#return; {5279#true} is VALID [2020-07-11 02:28:37,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:37,968 INFO L280 TraceCheckUtils]: 0: Hoare triple {5279#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {5279#true} is VALID [2020-07-11 02:28:37,969 INFO L280 TraceCheckUtils]: 1: Hoare triple {5279#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {5279#true} is VALID [2020-07-11 02:28:37,969 INFO L280 TraceCheckUtils]: 2: Hoare triple {5279#true} ~n := #in~n; {5279#true} is VALID [2020-07-11 02:28:37,970 INFO L280 TraceCheckUtils]: 3: Hoare triple {5279#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {5279#true} is VALID [2020-07-11 02:28:37,970 INFO L280 TraceCheckUtils]: 4: Hoare triple {5279#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {5279#true} is VALID [2020-07-11 02:28:37,970 INFO L280 TraceCheckUtils]: 5: Hoare triple {5279#true} havoc #t~ret0.base, #t~ret0.offset; {5279#true} is VALID [2020-07-11 02:28:37,971 INFO L280 TraceCheckUtils]: 6: Hoare triple {5279#true} assume true; {5279#true} is VALID [2020-07-11 02:28:37,971 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {5279#true} {5280#false} #201#return; {5280#false} is VALID [2020-07-11 02:28:37,972 INFO L263 TraceCheckUtils]: 0: Hoare triple {5279#true} call ULTIMATE.init(); {5295#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:37,973 INFO L280 TraceCheckUtils]: 1: Hoare triple {5295#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {5279#true} is VALID [2020-07-11 02:28:37,973 INFO L280 TraceCheckUtils]: 2: Hoare triple {5279#true} #valid := #valid[0 := 0]; {5279#true} is VALID [2020-07-11 02:28:37,973 INFO L280 TraceCheckUtils]: 3: Hoare triple {5279#true} assume 0 < #StackHeapBarrier; {5279#true} is VALID [2020-07-11 02:28:37,973 INFO L280 TraceCheckUtils]: 4: Hoare triple {5279#true} assume true; {5279#true} is VALID [2020-07-11 02:28:37,974 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {5279#true} {5279#true} #205#return; {5279#true} is VALID [2020-07-11 02:28:37,974 INFO L263 TraceCheckUtils]: 6: Hoare triple {5279#true} call #t~ret21 := main(); {5279#true} is VALID [2020-07-11 02:28:37,974 INFO L280 TraceCheckUtils]: 7: Hoare triple {5279#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {5279#true} is VALID [2020-07-11 02:28:37,974 INFO L280 TraceCheckUtils]: 8: Hoare triple {5279#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {5279#true} is VALID [2020-07-11 02:28:37,975 INFO L263 TraceCheckUtils]: 9: Hoare triple {5279#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {5279#true} is VALID [2020-07-11 02:28:37,975 INFO L280 TraceCheckUtils]: 10: Hoare triple {5279#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {5279#true} is VALID [2020-07-11 02:28:37,975 INFO L280 TraceCheckUtils]: 11: Hoare triple {5279#true} ~start~0 := 0; {5279#true} is VALID [2020-07-11 02:28:37,977 INFO L280 TraceCheckUtils]: 12: Hoare triple {5279#true} ~i~0 := -1; {5279#true} is VALID [2020-07-11 02:28:37,977 INFO L280 TraceCheckUtils]: 13: Hoare triple {5279#true} ~j~0 := -1; {5279#true} is VALID [2020-07-11 02:28:37,977 INFO L280 TraceCheckUtils]: 14: Hoare triple {5279#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {5279#true} is VALID [2020-07-11 02:28:37,977 INFO L280 TraceCheckUtils]: 15: Hoare triple {5279#true} assume !(~str.base == 0 && ~str.offset == 0); {5279#true} is VALID [2020-07-11 02:28:37,978 INFO L280 TraceCheckUtils]: 16: Hoare triple {5279#true} #t~post2 := ~i~0; {5279#true} is VALID [2020-07-11 02:28:37,978 INFO L280 TraceCheckUtils]: 17: Hoare triple {5279#true} ~i~0 := 1 + #t~post2; {5279#true} is VALID [2020-07-11 02:28:37,978 INFO L280 TraceCheckUtils]: 18: Hoare triple {5279#true} havoc #t~post2; {5279#true} is VALID [2020-07-11 02:28:37,978 INFO L280 TraceCheckUtils]: 19: Hoare triple {5279#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {5279#true} is VALID [2020-07-11 02:28:37,979 INFO L280 TraceCheckUtils]: 20: Hoare triple {5279#true} #t~switch4 := 0 == #t~mem3; {5279#true} is VALID [2020-07-11 02:28:37,979 INFO L280 TraceCheckUtils]: 21: Hoare triple {5279#true} assume #t~switch4; {5279#true} is VALID [2020-07-11 02:28:37,979 INFO L280 TraceCheckUtils]: 22: Hoare triple {5279#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {5279#true} is VALID [2020-07-11 02:28:37,980 INFO L280 TraceCheckUtils]: 23: Hoare triple {5279#true} #t~short7 := 32 == #t~mem5; {5279#true} is VALID [2020-07-11 02:28:37,981 INFO L280 TraceCheckUtils]: 24: Hoare triple {5279#true} assume !#t~short7; {5279#true} is VALID [2020-07-11 02:28:37,981 INFO L280 TraceCheckUtils]: 25: Hoare triple {5279#true} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {5279#true} is VALID [2020-07-11 02:28:37,984 INFO L280 TraceCheckUtils]: 26: Hoare triple {5279#true} #t~short7 := 9 == #t~mem6; {5279#true} is VALID [2020-07-11 02:28:37,985 INFO L280 TraceCheckUtils]: 27: Hoare triple {5279#true} assume !#t~short7; {5279#true} is VALID [2020-07-11 02:28:37,986 INFO L280 TraceCheckUtils]: 28: Hoare triple {5279#true} havoc #t~mem5; {5279#true} is VALID [2020-07-11 02:28:37,986 INFO L280 TraceCheckUtils]: 29: Hoare triple {5279#true} havoc #t~short7; {5279#true} is VALID [2020-07-11 02:28:37,986 INFO L280 TraceCheckUtils]: 30: Hoare triple {5279#true} havoc #t~mem6; {5279#true} is VALID [2020-07-11 02:28:37,987 INFO L280 TraceCheckUtils]: 31: Hoare triple {5279#true} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {5279#true} is VALID [2020-07-11 02:28:37,987 INFO L280 TraceCheckUtils]: 32: Hoare triple {5279#true} assume !(34 == #t~mem9); {5279#true} is VALID [2020-07-11 02:28:37,987 INFO L280 TraceCheckUtils]: 33: Hoare triple {5279#true} havoc #t~mem9; {5279#true} is VALID [2020-07-11 02:28:37,988 INFO L280 TraceCheckUtils]: 34: Hoare triple {5279#true} ~j~0 := ~i~0 - 1; {5279#true} is VALID [2020-07-11 02:28:37,988 INFO L280 TraceCheckUtils]: 35: Hoare triple {5279#true} #t~short14 := 0 < ~j~0; {5279#true} is VALID [2020-07-11 02:28:37,990 INFO L280 TraceCheckUtils]: 36: Hoare triple {5279#true} assume !#t~short14; {5279#true} is VALID [2020-07-11 02:28:37,990 INFO L280 TraceCheckUtils]: 37: Hoare triple {5279#true} assume !#t~short14; {5279#true} is VALID [2020-07-11 02:28:37,990 INFO L280 TraceCheckUtils]: 38: Hoare triple {5279#true} havoc #t~mem12; {5279#true} is VALID [2020-07-11 02:28:37,991 INFO L280 TraceCheckUtils]: 39: Hoare triple {5279#true} havoc #t~mem11; {5279#true} is VALID [2020-07-11 02:28:37,991 INFO L280 TraceCheckUtils]: 40: Hoare triple {5279#true} havoc #t~short13; {5279#true} is VALID [2020-07-11 02:28:37,993 INFO L280 TraceCheckUtils]: 41: Hoare triple {5279#true} havoc #t~short14; {5279#true} is VALID [2020-07-11 02:28:37,993 INFO L280 TraceCheckUtils]: 42: Hoare triple {5279#true} #t~short17 := 0 < ~j~0; {5279#true} is VALID [2020-07-11 02:28:37,997 INFO L280 TraceCheckUtils]: 43: Hoare triple {5279#true} assume !#t~short17; {5286#(not |parse_expression_list_#t~short17|)} is VALID [2020-07-11 02:28:37,998 INFO L280 TraceCheckUtils]: 44: Hoare triple {5286#(not |parse_expression_list_#t~short17|)} assume #t~short17; {5280#false} is VALID [2020-07-11 02:28:37,999 INFO L280 TraceCheckUtils]: 45: Hoare triple {5280#false} havoc #t~mem16; {5280#false} is VALID [2020-07-11 02:28:37,999 INFO L280 TraceCheckUtils]: 46: Hoare triple {5280#false} havoc #t~short17; {5280#false} is VALID [2020-07-11 02:28:38,000 INFO L280 TraceCheckUtils]: 47: Hoare triple {5280#false} #t~post18 := ~j~0; {5280#false} is VALID [2020-07-11 02:28:38,000 INFO L280 TraceCheckUtils]: 48: Hoare triple {5280#false} ~j~0 := #t~post18 - 1; {5280#false} is VALID [2020-07-11 02:28:38,000 INFO L280 TraceCheckUtils]: 49: Hoare triple {5280#false} havoc #t~post18; {5280#false} is VALID [2020-07-11 02:28:38,001 INFO L280 TraceCheckUtils]: 50: Hoare triple {5280#false} assume ~start~0 <= ~j~0; {5280#false} is VALID [2020-07-11 02:28:38,001 INFO L263 TraceCheckUtils]: 51: Hoare triple {5280#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)); {5279#true} is VALID [2020-07-11 02:28:38,001 INFO L280 TraceCheckUtils]: 52: Hoare triple {5279#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {5279#true} is VALID [2020-07-11 02:28:38,002 INFO L280 TraceCheckUtils]: 53: Hoare triple {5279#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {5279#true} is VALID [2020-07-11 02:28:38,002 INFO L280 TraceCheckUtils]: 54: Hoare triple {5279#true} ~n := #in~n; {5279#true} is VALID [2020-07-11 02:28:38,003 INFO L280 TraceCheckUtils]: 55: Hoare triple {5279#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {5279#true} is VALID [2020-07-11 02:28:38,003 INFO L280 TraceCheckUtils]: 56: Hoare triple {5279#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {5279#true} is VALID [2020-07-11 02:28:38,003 INFO L280 TraceCheckUtils]: 57: Hoare triple {5279#true} havoc #t~ret0.base, #t~ret0.offset; {5279#true} is VALID [2020-07-11 02:28:38,003 INFO L280 TraceCheckUtils]: 58: Hoare triple {5279#true} assume true; {5279#true} is VALID [2020-07-11 02:28:38,004 INFO L275 TraceCheckUtils]: 59: Hoare quadruple {5279#true} {5280#false} #201#return; {5280#false} is VALID [2020-07-11 02:28:38,004 INFO L280 TraceCheckUtils]: 60: Hoare triple {5280#false} havoc #t~ret19.base, #t~ret19.offset; {5280#false} is VALID [2020-07-11 02:28:38,004 INFO L263 TraceCheckUtils]: 61: Hoare triple {5280#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {5280#false} is VALID [2020-07-11 02:28:38,004 INFO L280 TraceCheckUtils]: 62: Hoare triple {5280#false} ~cond := #in~cond; {5280#false} is VALID [2020-07-11 02:28:38,005 INFO L280 TraceCheckUtils]: 63: Hoare triple {5280#false} assume 0 == ~cond; {5280#false} is VALID [2020-07-11 02:28:38,005 INFO L280 TraceCheckUtils]: 64: Hoare triple {5280#false} assume !false; {5280#false} is VALID [2020-07-11 02:28:38,008 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-11 02:28:38,009 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [157806650] [2020-07-11 02:28:38,009 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:38,009 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-11 02:28:38,010 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [418160018] [2020-07-11 02:28:38,011 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 65 [2020-07-11 02:28:38,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:38,012 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-11 02:28:38,077 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:38,078 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-11 02:28:38,078 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:38,078 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-11 02:28:38,079 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-11 02:28:38,079 INFO L87 Difference]: Start difference. First operand 144 states and 161 transitions. Second operand 4 states. [2020-07-11 02:28:38,611 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:38,611 INFO L93 Difference]: Finished difference Result 233 states and 260 transitions. [2020-07-11 02:28:38,611 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-11 02:28:38,611 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 65 [2020-07-11 02:28:38,612 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:38,612 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-11 02:28:38,615 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 208 transitions. [2020-07-11 02:28:38,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-11 02:28:38,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 208 transitions. [2020-07-11 02:28:38,619 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 208 transitions. [2020-07-11 02:28:38,821 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:38,825 INFO L225 Difference]: With dead ends: 233 [2020-07-11 02:28:38,825 INFO L226 Difference]: Without dead ends: 145 [2020-07-11 02:28:38,826 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-11 02:28:38,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 145 states. [2020-07-11 02:28:39,003 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 145 to 145. [2020-07-11 02:28:39,003 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:39,004 INFO L82 GeneralOperation]: Start isEquivalent. First operand 145 states. Second operand 145 states. [2020-07-11 02:28:39,004 INFO L74 IsIncluded]: Start isIncluded. First operand 145 states. Second operand 145 states. [2020-07-11 02:28:39,004 INFO L87 Difference]: Start difference. First operand 145 states. Second operand 145 states. [2020-07-11 02:28:39,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:39,009 INFO L93 Difference]: Finished difference Result 145 states and 161 transitions. [2020-07-11 02:28:39,009 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 161 transitions. [2020-07-11 02:28:39,010 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:39,010 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:39,010 INFO L74 IsIncluded]: Start isIncluded. First operand 145 states. Second operand 145 states. [2020-07-11 02:28:39,010 INFO L87 Difference]: Start difference. First operand 145 states. Second operand 145 states. [2020-07-11 02:28:39,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:39,015 INFO L93 Difference]: Finished difference Result 145 states and 161 transitions. [2020-07-11 02:28:39,015 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 161 transitions. [2020-07-11 02:28:39,016 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:39,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:39,016 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:39,016 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:39,017 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 145 states. [2020-07-11 02:28:39,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 145 states to 145 states and 161 transitions. [2020-07-11 02:28:39,021 INFO L78 Accepts]: Start accepts. Automaton has 145 states and 161 transitions. Word has length 65 [2020-07-11 02:28:39,022 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:39,022 INFO L479 AbstractCegarLoop]: Abstraction has 145 states and 161 transitions. [2020-07-11 02:28:39,022 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-11 02:28:39,022 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 145 states and 161 transitions. [2020-07-11 02:28:39,207 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 161 edges. 161 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:39,207 INFO L276 IsEmpty]: Start isEmpty. Operand 145 states and 161 transitions. [2020-07-11 02:28:39,208 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 68 [2020-07-11 02:28:39,208 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:39,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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2020-07-11 02:28:39,209 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2020-07-11 02:28:39,209 INFO L427 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:39,209 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:39,210 INFO L82 PathProgramCache]: Analyzing trace with hash -1492389340, now seen corresponding path program 1 times [2020-07-11 02:28:39,210 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:39,210 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [809831298] [2020-07-11 02:28:39,210 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:39,249 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:39,441 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:39,447 INFO L280 TraceCheckUtils]: 0: Hoare triple {6366#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6344#true} is VALID [2020-07-11 02:28:39,447 INFO L280 TraceCheckUtils]: 1: Hoare triple {6344#true} #valid := #valid[0 := 0]; {6344#true} is VALID [2020-07-11 02:28:39,448 INFO L280 TraceCheckUtils]: 2: Hoare triple {6344#true} assume 0 < #StackHeapBarrier; {6344#true} is VALID [2020-07-11 02:28:39,448 INFO L280 TraceCheckUtils]: 3: Hoare triple {6344#true} assume true; {6344#true} is VALID [2020-07-11 02:28:39,448 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {6344#true} {6344#true} #205#return; {6344#true} is VALID [2020-07-11 02:28:39,449 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:39,453 INFO L280 TraceCheckUtils]: 0: Hoare triple {6344#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {6344#true} is VALID [2020-07-11 02:28:39,454 INFO L280 TraceCheckUtils]: 1: Hoare triple {6344#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {6344#true} is VALID [2020-07-11 02:28:39,454 INFO L280 TraceCheckUtils]: 2: Hoare triple {6344#true} ~n := #in~n; {6344#true} is VALID [2020-07-11 02:28:39,454 INFO L280 TraceCheckUtils]: 3: Hoare triple {6344#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {6344#true} is VALID [2020-07-11 02:28:39,454 INFO L280 TraceCheckUtils]: 4: Hoare triple {6344#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {6344#true} is VALID [2020-07-11 02:28:39,454 INFO L280 TraceCheckUtils]: 5: Hoare triple {6344#true} havoc #t~ret0.base, #t~ret0.offset; {6344#true} is VALID [2020-07-11 02:28:39,455 INFO L280 TraceCheckUtils]: 6: Hoare triple {6344#true} assume true; {6344#true} is VALID [2020-07-11 02:28:39,455 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {6344#true} {6345#false} #201#return; {6345#false} is VALID [2020-07-11 02:28:39,456 INFO L263 TraceCheckUtils]: 0: Hoare triple {6344#true} call ULTIMATE.init(); {6366#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:39,456 INFO L280 TraceCheckUtils]: 1: Hoare triple {6366#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {6344#true} is VALID [2020-07-11 02:28:39,456 INFO L280 TraceCheckUtils]: 2: Hoare triple {6344#true} #valid := #valid[0 := 0]; {6344#true} is VALID [2020-07-11 02:28:39,456 INFO L280 TraceCheckUtils]: 3: Hoare triple {6344#true} assume 0 < #StackHeapBarrier; {6344#true} is VALID [2020-07-11 02:28:39,457 INFO L280 TraceCheckUtils]: 4: Hoare triple {6344#true} assume true; {6344#true} is VALID [2020-07-11 02:28:39,457 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {6344#true} {6344#true} #205#return; {6344#true} is VALID [2020-07-11 02:28:39,457 INFO L263 TraceCheckUtils]: 6: Hoare triple {6344#true} call #t~ret21 := main(); {6344#true} is VALID [2020-07-11 02:28:39,457 INFO L280 TraceCheckUtils]: 7: Hoare triple {6344#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {6344#true} is VALID [2020-07-11 02:28:39,457 INFO L280 TraceCheckUtils]: 8: Hoare triple {6344#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {6344#true} is VALID [2020-07-11 02:28:39,458 INFO L263 TraceCheckUtils]: 9: Hoare triple {6344#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {6344#true} is VALID [2020-07-11 02:28:39,458 INFO L280 TraceCheckUtils]: 10: Hoare triple {6344#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {6344#true} is VALID [2020-07-11 02:28:39,458 INFO L280 TraceCheckUtils]: 11: Hoare triple {6344#true} ~start~0 := 0; {6351#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:39,459 INFO L280 TraceCheckUtils]: 12: Hoare triple {6351#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {6352#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:39,460 INFO L280 TraceCheckUtils]: 13: Hoare triple {6352#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} ~j~0 := -1; {6352#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:39,461 INFO L280 TraceCheckUtils]: 14: Hoare triple {6352#(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: L49 {6352#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:39,462 INFO L280 TraceCheckUtils]: 15: Hoare triple {6352#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} assume !(~str.base == 0 && ~str.offset == 0); {6352#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:39,462 INFO L280 TraceCheckUtils]: 16: Hoare triple {6352#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} #t~post2 := ~i~0; {6353#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-11 02:28:39,463 INFO L280 TraceCheckUtils]: 17: Hoare triple {6353#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} ~i~0 := 1 + #t~post2; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,464 INFO L280 TraceCheckUtils]: 18: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~post2; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,464 INFO L280 TraceCheckUtils]: 19: Hoare triple {6354#(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: L53 {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,465 INFO L280 TraceCheckUtils]: 20: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~switch4 := 0 == #t~mem3; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,466 INFO L280 TraceCheckUtils]: 21: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume #t~switch4; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,466 INFO L280 TraceCheckUtils]: 22: Hoare triple {6354#(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: L55-17 {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,467 INFO L280 TraceCheckUtils]: 23: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 32 == #t~mem5; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,468 INFO L280 TraceCheckUtils]: 24: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,468 INFO L280 TraceCheckUtils]: 25: Hoare triple {6354#(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: L55-4 {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,469 INFO L280 TraceCheckUtils]: 26: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 9 == #t~mem6; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,470 INFO L280 TraceCheckUtils]: 27: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,470 INFO L280 TraceCheckUtils]: 28: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem5; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,471 INFO L280 TraceCheckUtils]: 29: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~short7; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,472 INFO L280 TraceCheckUtils]: 30: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem6; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,472 INFO L280 TraceCheckUtils]: 31: Hoare triple {6354#(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: L55-18 {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,473 INFO L280 TraceCheckUtils]: 32: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !(34 == #t~mem9); {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,474 INFO L280 TraceCheckUtils]: 33: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem9; {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:39,474 INFO L280 TraceCheckUtils]: 34: Hoare triple {6354#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} ~j~0 := ~i~0 - 1; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,475 INFO L280 TraceCheckUtils]: 35: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short14 := 0 < ~j~0; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,476 INFO L280 TraceCheckUtils]: 36: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short14; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,476 INFO L280 TraceCheckUtils]: 37: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume !#t~short14; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,477 INFO L280 TraceCheckUtils]: 38: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem12; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,478 INFO L280 TraceCheckUtils]: 39: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem11; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,478 INFO L280 TraceCheckUtils]: 40: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short13; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,480 INFO L280 TraceCheckUtils]: 41: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short14; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,483 INFO L280 TraceCheckUtils]: 42: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short17 := 0 < ~j~0; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,486 INFO L280 TraceCheckUtils]: 43: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume #t~short17; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,487 INFO L280 TraceCheckUtils]: 44: Hoare triple {6355#(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: L59-1 {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,487 INFO L280 TraceCheckUtils]: 45: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~short17 := 34 == #t~mem16; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,488 INFO L280 TraceCheckUtils]: 46: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} assume #t~short17; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,489 INFO L280 TraceCheckUtils]: 47: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~mem16; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,489 INFO L280 TraceCheckUtils]: 48: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} havoc #t~short17; {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} is VALID [2020-07-11 02:28:39,490 INFO L280 TraceCheckUtils]: 49: Hoare triple {6355#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 1) 0))} #t~post18 := ~j~0; {6356#(and (= 0 parse_expression_list_~start~0) (<= (+ |parse_expression_list_#t~post18| 1) 0))} is VALID [2020-07-11 02:28:39,491 INFO L280 TraceCheckUtils]: 50: Hoare triple {6356#(and (= 0 parse_expression_list_~start~0) (<= (+ |parse_expression_list_#t~post18| 1) 0))} ~j~0 := #t~post18 - 1; {6357#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) 0))} is VALID [2020-07-11 02:28:39,492 INFO L280 TraceCheckUtils]: 51: Hoare triple {6357#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) 0))} havoc #t~post18; {6357#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) 0))} is VALID [2020-07-11 02:28:39,493 INFO L280 TraceCheckUtils]: 52: Hoare triple {6357#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~j~0 2) 0))} assume ~start~0 <= ~j~0; {6345#false} is VALID [2020-07-11 02:28:39,493 INFO L263 TraceCheckUtils]: 53: Hoare triple {6345#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)); {6344#true} is VALID [2020-07-11 02:28:39,493 INFO L280 TraceCheckUtils]: 54: Hoare triple {6344#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {6344#true} is VALID [2020-07-11 02:28:39,493 INFO L280 TraceCheckUtils]: 55: Hoare triple {6344#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {6344#true} is VALID [2020-07-11 02:28:39,493 INFO L280 TraceCheckUtils]: 56: Hoare triple {6344#true} ~n := #in~n; {6344#true} is VALID [2020-07-11 02:28:39,494 INFO L280 TraceCheckUtils]: 57: Hoare triple {6344#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {6344#true} is VALID [2020-07-11 02:28:39,494 INFO L280 TraceCheckUtils]: 58: Hoare triple {6344#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {6344#true} is VALID [2020-07-11 02:28:39,494 INFO L280 TraceCheckUtils]: 59: Hoare triple {6344#true} havoc #t~ret0.base, #t~ret0.offset; {6344#true} is VALID [2020-07-11 02:28:39,494 INFO L280 TraceCheckUtils]: 60: Hoare triple {6344#true} assume true; {6344#true} is VALID [2020-07-11 02:28:39,494 INFO L275 TraceCheckUtils]: 61: Hoare quadruple {6344#true} {6345#false} #201#return; {6345#false} is VALID [2020-07-11 02:28:39,495 INFO L280 TraceCheckUtils]: 62: Hoare triple {6345#false} havoc #t~ret19.base, #t~ret19.offset; {6345#false} is VALID [2020-07-11 02:28:39,495 INFO L263 TraceCheckUtils]: 63: Hoare triple {6345#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {6345#false} is VALID [2020-07-11 02:28:39,495 INFO L280 TraceCheckUtils]: 64: Hoare triple {6345#false} ~cond := #in~cond; {6345#false} is VALID [2020-07-11 02:28:39,495 INFO L280 TraceCheckUtils]: 65: Hoare triple {6345#false} assume 0 == ~cond; {6345#false} is VALID [2020-07-11 02:28:39,495 INFO L280 TraceCheckUtils]: 66: Hoare triple {6345#false} assume !false; {6345#false} is VALID [2020-07-11 02:28:39,503 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-11 02:28:39,504 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [809831298] [2020-07-11 02:28:39,504 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:39,504 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2020-07-11 02:28:39,504 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [149212333] [2020-07-11 02:28:39,505 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 67 [2020-07-11 02:28:39,505 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:39,505 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-11 02:28:39,572 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 67 edges. 67 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:39,572 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-11 02:28:39,572 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:39,572 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-11 02:28:39,573 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=65, Unknown=0, NotChecked=0, Total=90 [2020-07-11 02:28:39,573 INFO L87 Difference]: Start difference. First operand 145 states and 161 transitions. Second operand 10 states. [2020-07-11 02:28:41,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:41,791 INFO L93 Difference]: Finished difference Result 388 states and 434 transitions. [2020-07-11 02:28:41,792 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-11 02:28:41,792 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 67 [2020-07-11 02:28:41,792 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:41,792 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-11 02:28:41,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 403 transitions. [2020-07-11 02:28:41,798 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-11 02:28:41,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 403 transitions. [2020-07-11 02:28:41,801 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 403 transitions. [2020-07-11 02:28:42,268 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:42,275 INFO L225 Difference]: With dead ends: 388 [2020-07-11 02:28:42,275 INFO L226 Difference]: Without dead ends: 285 [2020-07-11 02:28:42,276 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 50 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=100, Invalid=280, Unknown=0, NotChecked=0, Total=380 [2020-07-11 02:28:42,277 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 285 states. [2020-07-11 02:28:42,457 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 285 to 155. [2020-07-11 02:28:42,458 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:42,458 INFO L82 GeneralOperation]: Start isEquivalent. First operand 285 states. Second operand 155 states. [2020-07-11 02:28:42,458 INFO L74 IsIncluded]: Start isIncluded. First operand 285 states. Second operand 155 states. [2020-07-11 02:28:42,458 INFO L87 Difference]: Start difference. First operand 285 states. Second operand 155 states. [2020-07-11 02:28:42,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:42,467 INFO L93 Difference]: Finished difference Result 285 states and 321 transitions. [2020-07-11 02:28:42,467 INFO L276 IsEmpty]: Start isEmpty. Operand 285 states and 321 transitions. [2020-07-11 02:28:42,469 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:42,469 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:42,469 INFO L74 IsIncluded]: Start isIncluded. First operand 155 states. Second operand 285 states. [2020-07-11 02:28:42,469 INFO L87 Difference]: Start difference. First operand 155 states. Second operand 285 states. [2020-07-11 02:28:42,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:42,478 INFO L93 Difference]: Finished difference Result 285 states and 321 transitions. [2020-07-11 02:28:42,478 INFO L276 IsEmpty]: Start isEmpty. Operand 285 states and 321 transitions. [2020-07-11 02:28:42,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:42,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:42,479 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:42,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:42,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 155 states. [2020-07-11 02:28:42,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 155 states to 155 states and 173 transitions. [2020-07-11 02:28:42,483 INFO L78 Accepts]: Start accepts. Automaton has 155 states and 173 transitions. Word has length 67 [2020-07-11 02:28:42,483 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:42,483 INFO L479 AbstractCegarLoop]: Abstraction has 155 states and 173 transitions. [2020-07-11 02:28:42,483 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-11 02:28:42,484 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 155 states and 173 transitions. [2020-07-11 02:28:42,689 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 173 edges. 173 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:42,689 INFO L276 IsEmpty]: Start isEmpty. Operand 155 states and 173 transitions. [2020-07-11 02:28:42,691 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 71 [2020-07-11 02:28:42,691 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:42,692 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-11 02:28:42,692 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2020-07-11 02:28:42,692 INFO L427 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:42,692 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:42,693 INFO L82 PathProgramCache]: Analyzing trace with hash 122758570, now seen corresponding path program 1 times [2020-07-11 02:28:42,693 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:42,693 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1178077525] [2020-07-11 02:28:42,693 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:42,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:42,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:42,904 INFO L280 TraceCheckUtils]: 0: Hoare triple {8069#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {8045#true} is VALID [2020-07-11 02:28:42,905 INFO L280 TraceCheckUtils]: 1: Hoare triple {8045#true} #valid := #valid[0 := 0]; {8045#true} is VALID [2020-07-11 02:28:42,905 INFO L280 TraceCheckUtils]: 2: Hoare triple {8045#true} assume 0 < #StackHeapBarrier; {8045#true} is VALID [2020-07-11 02:28:42,905 INFO L280 TraceCheckUtils]: 3: Hoare triple {8045#true} assume true; {8045#true} is VALID [2020-07-11 02:28:42,905 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {8045#true} {8045#true} #205#return; {8045#true} is VALID [2020-07-11 02:28:42,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:42,924 INFO L280 TraceCheckUtils]: 0: Hoare triple {8045#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {8045#true} is VALID [2020-07-11 02:28:42,924 INFO L280 TraceCheckUtils]: 1: Hoare triple {8045#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {8045#true} is VALID [2020-07-11 02:28:42,924 INFO L280 TraceCheckUtils]: 2: Hoare triple {8045#true} ~n := #in~n; {8045#true} is VALID [2020-07-11 02:28:42,925 INFO L280 TraceCheckUtils]: 3: Hoare triple {8045#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {8045#true} is VALID [2020-07-11 02:28:42,925 INFO L280 TraceCheckUtils]: 4: Hoare triple {8045#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {8045#true} is VALID [2020-07-11 02:28:42,925 INFO L280 TraceCheckUtils]: 5: Hoare triple {8045#true} havoc #t~ret0.base, #t~ret0.offset; {8045#true} is VALID [2020-07-11 02:28:42,926 INFO L280 TraceCheckUtils]: 6: Hoare triple {8045#true} assume true; {8045#true} is VALID [2020-07-11 02:28:42,926 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {8045#true} {8046#false} #201#return; {8046#false} is VALID [2020-07-11 02:28:42,928 INFO L263 TraceCheckUtils]: 0: Hoare triple {8045#true} call ULTIMATE.init(); {8069#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:42,928 INFO L280 TraceCheckUtils]: 1: Hoare triple {8069#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {8045#true} is VALID [2020-07-11 02:28:42,928 INFO L280 TraceCheckUtils]: 2: Hoare triple {8045#true} #valid := #valid[0 := 0]; {8045#true} is VALID [2020-07-11 02:28:42,929 INFO L280 TraceCheckUtils]: 3: Hoare triple {8045#true} assume 0 < #StackHeapBarrier; {8045#true} is VALID [2020-07-11 02:28:42,929 INFO L280 TraceCheckUtils]: 4: Hoare triple {8045#true} assume true; {8045#true} is VALID [2020-07-11 02:28:42,929 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {8045#true} {8045#true} #205#return; {8045#true} is VALID [2020-07-11 02:28:42,930 INFO L263 TraceCheckUtils]: 6: Hoare triple {8045#true} call #t~ret21 := main(); {8045#true} is VALID [2020-07-11 02:28:42,930 INFO L280 TraceCheckUtils]: 7: Hoare triple {8045#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {8045#true} is VALID [2020-07-11 02:28:42,930 INFO L280 TraceCheckUtils]: 8: Hoare triple {8045#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {8045#true} is VALID [2020-07-11 02:28:42,931 INFO L263 TraceCheckUtils]: 9: Hoare triple {8045#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {8045#true} is VALID [2020-07-11 02:28:42,931 INFO L280 TraceCheckUtils]: 10: Hoare triple {8045#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {8045#true} is VALID [2020-07-11 02:28:42,936 INFO L280 TraceCheckUtils]: 11: Hoare triple {8045#true} ~start~0 := 0; {8052#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,937 INFO L280 TraceCheckUtils]: 12: Hoare triple {8052#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {8053#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:42,937 INFO L280 TraceCheckUtils]: 13: Hoare triple {8053#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} ~j~0 := -1; {8053#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:42,938 INFO L280 TraceCheckUtils]: 14: Hoare triple {8053#(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: L49 {8053#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:42,939 INFO L280 TraceCheckUtils]: 15: Hoare triple {8053#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} assume !(~str.base == 0 && ~str.offset == 0); {8053#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} is VALID [2020-07-11 02:28:42,940 INFO L280 TraceCheckUtils]: 16: Hoare triple {8053#(and (= 0 parse_expression_list_~start~0) (<= (+ parse_expression_list_~i~0 1) 0))} #t~post2 := ~i~0; {8054#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-11 02:28:42,941 INFO L280 TraceCheckUtils]: 17: Hoare triple {8054#(and (<= (+ |parse_expression_list_#t~post2| 1) 0) (= 0 parse_expression_list_~start~0))} ~i~0 := 1 + #t~post2; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,942 INFO L280 TraceCheckUtils]: 18: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~post2; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,943 INFO L280 TraceCheckUtils]: 19: Hoare triple {8055#(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: L53 {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,943 INFO L280 TraceCheckUtils]: 20: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~switch4 := 0 == #t~mem3; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,944 INFO L280 TraceCheckUtils]: 21: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume #t~switch4; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,945 INFO L280 TraceCheckUtils]: 22: Hoare triple {8055#(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: L55-17 {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,946 INFO L280 TraceCheckUtils]: 23: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 32 == #t~mem5; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,947 INFO L280 TraceCheckUtils]: 24: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,948 INFO L280 TraceCheckUtils]: 25: Hoare triple {8055#(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: L55-4 {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,949 INFO L280 TraceCheckUtils]: 26: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~short7 := 9 == #t~mem6; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,950 INFO L280 TraceCheckUtils]: 27: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume !#t~short7; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,951 INFO L280 TraceCheckUtils]: 28: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem5; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,951 INFO L280 TraceCheckUtils]: 29: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~short7; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,952 INFO L280 TraceCheckUtils]: 30: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem6; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,953 INFO L280 TraceCheckUtils]: 31: Hoare triple {8055#(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: L55-18 {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,954 INFO L280 TraceCheckUtils]: 32: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} assume 34 == #t~mem9; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,954 INFO L280 TraceCheckUtils]: 33: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} havoc #t~mem9; {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,955 INFO L280 TraceCheckUtils]: 34: Hoare triple {8055#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~i~0 0))} #t~post10 := ~start~0; {8056#(and (= 0 |parse_expression_list_#t~post10|) (<= parse_expression_list_~i~0 0))} is VALID [2020-07-11 02:28:42,956 INFO L280 TraceCheckUtils]: 35: Hoare triple {8056#(and (= 0 |parse_expression_list_#t~post10|) (<= parse_expression_list_~i~0 0))} ~start~0 := 1 + #t~post10; {8057#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,956 INFO L280 TraceCheckUtils]: 36: Hoare triple {8057#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} havoc #t~post10; {8057#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,957 INFO L280 TraceCheckUtils]: 37: Hoare triple {8057#(<= (+ parse_expression_list_~i~0 1) parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,958 INFO L280 TraceCheckUtils]: 38: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,958 INFO L280 TraceCheckUtils]: 39: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,959 INFO L280 TraceCheckUtils]: 40: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,959 INFO L280 TraceCheckUtils]: 41: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem12; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,960 INFO L280 TraceCheckUtils]: 42: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem11; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,960 INFO L280 TraceCheckUtils]: 43: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short13; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,961 INFO L280 TraceCheckUtils]: 44: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short14; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,961 INFO L280 TraceCheckUtils]: 45: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,964 INFO L280 TraceCheckUtils]: 46: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume #t~short17; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,965 INFO L280 TraceCheckUtils]: 47: Hoare triple {8058#(<= (+ 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: L59-1 {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,966 INFO L280 TraceCheckUtils]: 48: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short17 := 34 == #t~mem16; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,966 INFO L280 TraceCheckUtils]: 49: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume #t~short17; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,967 INFO L280 TraceCheckUtils]: 50: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem16; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,968 INFO L280 TraceCheckUtils]: 51: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short17; {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,969 INFO L280 TraceCheckUtils]: 52: Hoare triple {8058#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~post18 := ~j~0; {8059#(<= (+ |parse_expression_list_#t~post18| 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,970 INFO L280 TraceCheckUtils]: 53: Hoare triple {8059#(<= (+ |parse_expression_list_#t~post18| 2) parse_expression_list_~start~0)} ~j~0 := #t~post18 - 1; {8060#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,993 INFO L280 TraceCheckUtils]: 54: Hoare triple {8060#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~post18; {8060#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:42,994 INFO L280 TraceCheckUtils]: 55: Hoare triple {8060#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {8046#false} is VALID [2020-07-11 02:28:42,994 INFO L263 TraceCheckUtils]: 56: Hoare triple {8046#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)); {8045#true} is VALID [2020-07-11 02:28:42,994 INFO L280 TraceCheckUtils]: 57: Hoare triple {8045#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {8045#true} is VALID [2020-07-11 02:28:42,995 INFO L280 TraceCheckUtils]: 58: Hoare triple {8045#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {8045#true} is VALID [2020-07-11 02:28:42,995 INFO L280 TraceCheckUtils]: 59: Hoare triple {8045#true} ~n := #in~n; {8045#true} is VALID [2020-07-11 02:28:42,995 INFO L280 TraceCheckUtils]: 60: Hoare triple {8045#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {8045#true} is VALID [2020-07-11 02:28:42,996 INFO L280 TraceCheckUtils]: 61: Hoare triple {8045#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {8045#true} is VALID [2020-07-11 02:28:42,996 INFO L280 TraceCheckUtils]: 62: Hoare triple {8045#true} havoc #t~ret0.base, #t~ret0.offset; {8045#true} is VALID [2020-07-11 02:28:42,996 INFO L280 TraceCheckUtils]: 63: Hoare triple {8045#true} assume true; {8045#true} is VALID [2020-07-11 02:28:42,996 INFO L275 TraceCheckUtils]: 64: Hoare quadruple {8045#true} {8046#false} #201#return; {8046#false} is VALID [2020-07-11 02:28:42,996 INFO L280 TraceCheckUtils]: 65: Hoare triple {8046#false} havoc #t~ret19.base, #t~ret19.offset; {8046#false} is VALID [2020-07-11 02:28:42,997 INFO L263 TraceCheckUtils]: 66: Hoare triple {8046#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {8046#false} is VALID [2020-07-11 02:28:42,997 INFO L280 TraceCheckUtils]: 67: Hoare triple {8046#false} ~cond := #in~cond; {8046#false} is VALID [2020-07-11 02:28:42,997 INFO L280 TraceCheckUtils]: 68: Hoare triple {8046#false} assume 0 == ~cond; {8046#false} is VALID [2020-07-11 02:28:42,997 INFO L280 TraceCheckUtils]: 69: Hoare triple {8046#false} assume !false; {8046#false} is VALID [2020-07-11 02:28:43,007 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-11 02:28:43,008 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1178077525] [2020-07-11 02:28:43,008 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:43,008 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2020-07-11 02:28:43,009 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [119961490] [2020-07-11 02:28:43,011 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 70 [2020-07-11 02:28:43,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:43,011 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-11 02:28:43,086 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-11 02:28:43,086 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-11 02:28:43,086 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:43,087 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-11 02:28:43,087 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=105, Unknown=0, NotChecked=0, Total=132 [2020-07-11 02:28:43,087 INFO L87 Difference]: Start difference. First operand 155 states and 173 transitions. Second operand 12 states. [2020-07-11 02:28:45,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:45,472 INFO L93 Difference]: Finished difference Result 425 states and 477 transitions. [2020-07-11 02:28:45,472 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2020-07-11 02:28:45,472 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 70 [2020-07-11 02:28:45,472 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:45,472 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-11 02:28:45,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 457 transitions. [2020-07-11 02:28:45,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-11 02:28:45,487 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 457 transitions. [2020-07-11 02:28:45,487 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 457 transitions. [2020-07-11 02:28:45,923 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 457 edges. 457 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:45,932 INFO L225 Difference]: With dead ends: 425 [2020-07-11 02:28:45,933 INFO L226 Difference]: Without dead ends: 322 [2020-07-11 02:28:45,934 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=86, Invalid=376, Unknown=0, NotChecked=0, Total=462 [2020-07-11 02:28:45,935 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 322 states. [2020-07-11 02:28:46,071 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 322 to 136. [2020-07-11 02:28:46,071 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:46,071 INFO L82 GeneralOperation]: Start isEquivalent. First operand 322 states. Second operand 136 states. [2020-07-11 02:28:46,072 INFO L74 IsIncluded]: Start isIncluded. First operand 322 states. Second operand 136 states. [2020-07-11 02:28:46,072 INFO L87 Difference]: Start difference. First operand 322 states. Second operand 136 states. [2020-07-11 02:28:46,080 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:46,081 INFO L93 Difference]: Finished difference Result 322 states and 364 transitions. [2020-07-11 02:28:46,081 INFO L276 IsEmpty]: Start isEmpty. Operand 322 states and 364 transitions. [2020-07-11 02:28:46,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:46,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:46,083 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand 322 states. [2020-07-11 02:28:46,083 INFO L87 Difference]: Start difference. First operand 136 states. Second operand 322 states. [2020-07-11 02:28:46,092 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:46,092 INFO L93 Difference]: Finished difference Result 322 states and 364 transitions. [2020-07-11 02:28:46,093 INFO L276 IsEmpty]: Start isEmpty. Operand 322 states and 364 transitions. [2020-07-11 02:28:46,094 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:46,094 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:46,094 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:46,094 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:46,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 136 states. [2020-07-11 02:28:46,097 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 136 states to 136 states and 151 transitions. [2020-07-11 02:28:46,098 INFO L78 Accepts]: Start accepts. Automaton has 136 states and 151 transitions. Word has length 70 [2020-07-11 02:28:46,098 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:46,098 INFO L479 AbstractCegarLoop]: Abstraction has 136 states and 151 transitions. [2020-07-11 02:28:46,098 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-11 02:28:46,098 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 136 states and 151 transitions. [2020-07-11 02:28:46,269 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 151 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:46,270 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 151 transitions. [2020-07-11 02:28:46,270 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2020-07-11 02:28:46,271 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:46,271 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-11 02:28:46,271 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2020-07-11 02:28:46,271 INFO L427 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:46,271 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:46,272 INFO L82 PathProgramCache]: Analyzing trace with hash -272178825, now seen corresponding path program 1 times [2020-07-11 02:28:46,272 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:46,272 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1486989418] [2020-07-11 02:28:46,272 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:46,283 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:46,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:46,348 INFO L280 TraceCheckUtils]: 0: Hoare triple {9874#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {9858#true} is VALID [2020-07-11 02:28:46,349 INFO L280 TraceCheckUtils]: 1: Hoare triple {9858#true} #valid := #valid[0 := 0]; {9858#true} is VALID [2020-07-11 02:28:46,349 INFO L280 TraceCheckUtils]: 2: Hoare triple {9858#true} assume 0 < #StackHeapBarrier; {9858#true} is VALID [2020-07-11 02:28:46,349 INFO L280 TraceCheckUtils]: 3: Hoare triple {9858#true} assume true; {9858#true} is VALID [2020-07-11 02:28:46,349 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {9858#true} {9858#true} #205#return; {9858#true} is VALID [2020-07-11 02:28:46,351 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:46,357 INFO L280 TraceCheckUtils]: 0: Hoare triple {9858#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {9858#true} is VALID [2020-07-11 02:28:46,357 INFO L280 TraceCheckUtils]: 1: Hoare triple {9858#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {9858#true} is VALID [2020-07-11 02:28:46,357 INFO L280 TraceCheckUtils]: 2: Hoare triple {9858#true} ~n := #in~n; {9858#true} is VALID [2020-07-11 02:28:46,358 INFO L280 TraceCheckUtils]: 3: Hoare triple {9858#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {9858#true} is VALID [2020-07-11 02:28:46,358 INFO L280 TraceCheckUtils]: 4: Hoare triple {9858#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {9858#true} is VALID [2020-07-11 02:28:46,358 INFO L280 TraceCheckUtils]: 5: Hoare triple {9858#true} havoc #t~ret0.base, #t~ret0.offset; {9858#true} is VALID [2020-07-11 02:28:46,358 INFO L280 TraceCheckUtils]: 6: Hoare triple {9858#true} assume true; {9858#true} is VALID [2020-07-11 02:28:46,358 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {9858#true} {9859#false} #201#return; {9859#false} is VALID [2020-07-11 02:28:46,360 INFO L263 TraceCheckUtils]: 0: Hoare triple {9858#true} call ULTIMATE.init(); {9874#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:46,360 INFO L280 TraceCheckUtils]: 1: Hoare triple {9874#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {9858#true} is VALID [2020-07-11 02:28:46,361 INFO L280 TraceCheckUtils]: 2: Hoare triple {9858#true} #valid := #valid[0 := 0]; {9858#true} is VALID [2020-07-11 02:28:46,361 INFO L280 TraceCheckUtils]: 3: Hoare triple {9858#true} assume 0 < #StackHeapBarrier; {9858#true} is VALID [2020-07-11 02:28:46,361 INFO L280 TraceCheckUtils]: 4: Hoare triple {9858#true} assume true; {9858#true} is VALID [2020-07-11 02:28:46,361 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {9858#true} {9858#true} #205#return; {9858#true} is VALID [2020-07-11 02:28:46,361 INFO L263 TraceCheckUtils]: 6: Hoare triple {9858#true} call #t~ret21 := main(); {9858#true} is VALID [2020-07-11 02:28:46,362 INFO L280 TraceCheckUtils]: 7: Hoare triple {9858#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {9858#true} is VALID [2020-07-11 02:28:46,362 INFO L280 TraceCheckUtils]: 8: Hoare triple {9858#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {9858#true} is VALID [2020-07-11 02:28:46,362 INFO L263 TraceCheckUtils]: 9: Hoare triple {9858#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {9858#true} is VALID [2020-07-11 02:28:46,362 INFO L280 TraceCheckUtils]: 10: Hoare triple {9858#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {9858#true} is VALID [2020-07-11 02:28:46,362 INFO L280 TraceCheckUtils]: 11: Hoare triple {9858#true} ~start~0 := 0; {9858#true} is VALID [2020-07-11 02:28:46,362 INFO L280 TraceCheckUtils]: 12: Hoare triple {9858#true} ~i~0 := -1; {9858#true} is VALID [2020-07-11 02:28:46,363 INFO L280 TraceCheckUtils]: 13: Hoare triple {9858#true} ~j~0 := -1; {9858#true} is VALID [2020-07-11 02:28:46,363 INFO L280 TraceCheckUtils]: 14: Hoare triple {9858#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {9858#true} is VALID [2020-07-11 02:28:46,363 INFO L280 TraceCheckUtils]: 15: Hoare triple {9858#true} assume !(~str.base == 0 && ~str.offset == 0); {9858#true} is VALID [2020-07-11 02:28:46,363 INFO L280 TraceCheckUtils]: 16: Hoare triple {9858#true} #t~post2 := ~i~0; {9858#true} is VALID [2020-07-11 02:28:46,363 INFO L280 TraceCheckUtils]: 17: Hoare triple {9858#true} ~i~0 := 1 + #t~post2; {9858#true} is VALID [2020-07-11 02:28:46,364 INFO L280 TraceCheckUtils]: 18: Hoare triple {9858#true} havoc #t~post2; {9858#true} is VALID [2020-07-11 02:28:46,364 INFO L280 TraceCheckUtils]: 19: Hoare triple {9858#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {9858#true} is VALID [2020-07-11 02:28:46,364 INFO L280 TraceCheckUtils]: 20: Hoare triple {9858#true} #t~switch4 := 0 == #t~mem3; {9858#true} is VALID [2020-07-11 02:28:46,364 INFO L280 TraceCheckUtils]: 21: Hoare triple {9858#true} assume #t~switch4; {9858#true} is VALID [2020-07-11 02:28:46,365 INFO L280 TraceCheckUtils]: 22: Hoare triple {9858#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {9858#true} is VALID [2020-07-11 02:28:46,365 INFO L280 TraceCheckUtils]: 23: Hoare triple {9858#true} #t~short7 := 32 == #t~mem5; {9858#true} is VALID [2020-07-11 02:28:46,365 INFO L280 TraceCheckUtils]: 24: Hoare triple {9858#true} assume !#t~short7; {9858#true} is VALID [2020-07-11 02:28:46,365 INFO L280 TraceCheckUtils]: 25: Hoare triple {9858#true} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {9858#true} is VALID [2020-07-11 02:28:46,365 INFO L280 TraceCheckUtils]: 26: Hoare triple {9858#true} #t~short7 := 9 == #t~mem6; {9858#true} is VALID [2020-07-11 02:28:46,365 INFO L280 TraceCheckUtils]: 27: Hoare triple {9858#true} assume !#t~short7; {9858#true} is VALID [2020-07-11 02:28:46,366 INFO L280 TraceCheckUtils]: 28: Hoare triple {9858#true} havoc #t~mem5; {9858#true} is VALID [2020-07-11 02:28:46,366 INFO L280 TraceCheckUtils]: 29: Hoare triple {9858#true} havoc #t~short7; {9858#true} is VALID [2020-07-11 02:28:46,366 INFO L280 TraceCheckUtils]: 30: Hoare triple {9858#true} havoc #t~mem6; {9858#true} is VALID [2020-07-11 02:28:46,366 INFO L280 TraceCheckUtils]: 31: Hoare triple {9858#true} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {9858#true} is VALID [2020-07-11 02:28:46,366 INFO L280 TraceCheckUtils]: 32: Hoare triple {9858#true} assume !(34 == #t~mem9); {9858#true} is VALID [2020-07-11 02:28:46,367 INFO L280 TraceCheckUtils]: 33: Hoare triple {9858#true} havoc #t~mem9; {9858#true} is VALID [2020-07-11 02:28:46,367 INFO L280 TraceCheckUtils]: 34: Hoare triple {9858#true} ~j~0 := ~i~0 - 1; {9858#true} is VALID [2020-07-11 02:28:46,367 INFO L280 TraceCheckUtils]: 35: Hoare triple {9858#true} #t~short14 := 0 < ~j~0; {9858#true} is VALID [2020-07-11 02:28:46,368 INFO L280 TraceCheckUtils]: 36: Hoare triple {9858#true} assume !#t~short14; {9865#(not |parse_expression_list_#t~short14|)} is VALID [2020-07-11 02:28:46,369 INFO L280 TraceCheckUtils]: 37: Hoare triple {9865#(not |parse_expression_list_#t~short14|)} assume !!#t~short14; {9859#false} is VALID [2020-07-11 02:28:46,369 INFO L280 TraceCheckUtils]: 38: Hoare triple {9859#false} havoc #t~mem12; {9859#false} is VALID [2020-07-11 02:28:46,369 INFO L280 TraceCheckUtils]: 39: Hoare triple {9859#false} havoc #t~mem11; {9859#false} is VALID [2020-07-11 02:28:46,369 INFO L280 TraceCheckUtils]: 40: Hoare triple {9859#false} havoc #t~short13; {9859#false} is VALID [2020-07-11 02:28:46,369 INFO L280 TraceCheckUtils]: 41: Hoare triple {9859#false} havoc #t~short14; {9859#false} is VALID [2020-07-11 02:28:46,369 INFO L280 TraceCheckUtils]: 42: Hoare triple {9859#false} #t~post15 := ~j~0; {9859#false} is VALID [2020-07-11 02:28:46,370 INFO L280 TraceCheckUtils]: 43: Hoare triple {9859#false} ~j~0 := #t~post15 - 1; {9859#false} is VALID [2020-07-11 02:28:46,370 INFO L280 TraceCheckUtils]: 44: Hoare triple {9859#false} havoc #t~post15; {9859#false} is VALID [2020-07-11 02:28:46,370 INFO L280 TraceCheckUtils]: 45: Hoare triple {9859#false} #t~short14 := 0 < ~j~0; {9859#false} is VALID [2020-07-11 02:28:46,370 INFO L280 TraceCheckUtils]: 46: Hoare triple {9859#false} assume !#t~short14; {9859#false} is VALID [2020-07-11 02:28:46,370 INFO L280 TraceCheckUtils]: 47: Hoare triple {9859#false} assume !#t~short14; {9859#false} is VALID [2020-07-11 02:28:46,371 INFO L280 TraceCheckUtils]: 48: Hoare triple {9859#false} havoc #t~mem12; {9859#false} is VALID [2020-07-11 02:28:46,371 INFO L280 TraceCheckUtils]: 49: Hoare triple {9859#false} havoc #t~mem11; {9859#false} is VALID [2020-07-11 02:28:46,371 INFO L280 TraceCheckUtils]: 50: Hoare triple {9859#false} havoc #t~short13; {9859#false} is VALID [2020-07-11 02:28:46,371 INFO L280 TraceCheckUtils]: 51: Hoare triple {9859#false} havoc #t~short14; {9859#false} is VALID [2020-07-11 02:28:46,371 INFO L280 TraceCheckUtils]: 52: Hoare triple {9859#false} #t~short17 := 0 < ~j~0; {9859#false} is VALID [2020-07-11 02:28:46,371 INFO L280 TraceCheckUtils]: 53: Hoare triple {9859#false} assume !#t~short17; {9859#false} is VALID [2020-07-11 02:28:46,372 INFO L280 TraceCheckUtils]: 54: Hoare triple {9859#false} assume !#t~short17; {9859#false} is VALID [2020-07-11 02:28:46,372 INFO L280 TraceCheckUtils]: 55: Hoare triple {9859#false} havoc #t~mem16; {9859#false} is VALID [2020-07-11 02:28:46,372 INFO L280 TraceCheckUtils]: 56: Hoare triple {9859#false} havoc #t~short17; {9859#false} is VALID [2020-07-11 02:28:46,372 INFO L280 TraceCheckUtils]: 57: Hoare triple {9859#false} assume ~start~0 <= ~j~0; {9859#false} is VALID [2020-07-11 02:28:46,372 INFO L263 TraceCheckUtils]: 58: Hoare triple {9859#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)); {9858#true} is VALID [2020-07-11 02:28:46,372 INFO L280 TraceCheckUtils]: 59: Hoare triple {9858#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {9858#true} is VALID [2020-07-11 02:28:46,373 INFO L280 TraceCheckUtils]: 60: Hoare triple {9858#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {9858#true} is VALID [2020-07-11 02:28:46,373 INFO L280 TraceCheckUtils]: 61: Hoare triple {9858#true} ~n := #in~n; {9858#true} is VALID [2020-07-11 02:28:46,373 INFO L280 TraceCheckUtils]: 62: Hoare triple {9858#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {9858#true} is VALID [2020-07-11 02:28:46,373 INFO L280 TraceCheckUtils]: 63: Hoare triple {9858#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {9858#true} is VALID [2020-07-11 02:28:46,373 INFO L280 TraceCheckUtils]: 64: Hoare triple {9858#true} havoc #t~ret0.base, #t~ret0.offset; {9858#true} is VALID [2020-07-11 02:28:46,374 INFO L280 TraceCheckUtils]: 65: Hoare triple {9858#true} assume true; {9858#true} is VALID [2020-07-11 02:28:46,374 INFO L275 TraceCheckUtils]: 66: Hoare quadruple {9858#true} {9859#false} #201#return; {9859#false} is VALID [2020-07-11 02:28:46,374 INFO L280 TraceCheckUtils]: 67: Hoare triple {9859#false} havoc #t~ret19.base, #t~ret19.offset; {9859#false} is VALID [2020-07-11 02:28:46,374 INFO L263 TraceCheckUtils]: 68: Hoare triple {9859#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {9859#false} is VALID [2020-07-11 02:28:46,374 INFO L280 TraceCheckUtils]: 69: Hoare triple {9859#false} ~cond := #in~cond; {9859#false} is VALID [2020-07-11 02:28:46,374 INFO L280 TraceCheckUtils]: 70: Hoare triple {9859#false} assume 0 == ~cond; {9859#false} is VALID [2020-07-11 02:28:46,375 INFO L280 TraceCheckUtils]: 71: Hoare triple {9859#false} assume !false; {9859#false} is VALID [2020-07-11 02:28:46,378 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 3 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-11 02:28:46,378 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1486989418] [2020-07-11 02:28:46,378 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:46,378 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2020-07-11 02:28:46,379 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [867999688] [2020-07-11 02:28:46,379 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 72 [2020-07-11 02:28:46,379 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:46,380 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states. [2020-07-11 02:28:46,456 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-11 02:28:46,456 INFO L459 AbstractCegarLoop]: Interpolant automaton has 4 states [2020-07-11 02:28:46,457 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:46,457 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2020-07-11 02:28:46,457 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2020-07-11 02:28:46,457 INFO L87 Difference]: Start difference. First operand 136 states and 151 transitions. Second operand 4 states. [2020-07-11 02:28:47,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:47,010 INFO L93 Difference]: Finished difference Result 226 states and 251 transitions. [2020-07-11 02:28:47,010 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2020-07-11 02:28:47,010 INFO L78 Accepts]: Start accepts. Automaton has 4 states. Word has length 72 [2020-07-11 02:28:47,010 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:47,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-11 02:28:47,012 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 208 transitions. [2020-07-11 02:28:47,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 4 states. [2020-07-11 02:28:47,014 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 208 transitions. [2020-07-11 02:28:47,014 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 208 transitions. [2020-07-11 02:28:47,219 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 208 edges. 208 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:47,221 INFO L225 Difference]: With dead ends: 226 [2020-07-11 02:28:47,221 INFO L226 Difference]: Without dead ends: 137 [2020-07-11 02:28:47,222 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-11 02:28:47,223 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 137 states. [2020-07-11 02:28:47,372 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 137 to 137. [2020-07-11 02:28:47,372 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:47,372 INFO L82 GeneralOperation]: Start isEquivalent. First operand 137 states. Second operand 137 states. [2020-07-11 02:28:47,372 INFO L74 IsIncluded]: Start isIncluded. First operand 137 states. Second operand 137 states. [2020-07-11 02:28:47,373 INFO L87 Difference]: Start difference. First operand 137 states. Second operand 137 states. [2020-07-11 02:28:47,378 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:47,378 INFO L93 Difference]: Finished difference Result 137 states and 151 transitions. [2020-07-11 02:28:47,378 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 151 transitions. [2020-07-11 02:28:47,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:47,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:47,379 INFO L74 IsIncluded]: Start isIncluded. First operand 137 states. Second operand 137 states. [2020-07-11 02:28:47,379 INFO L87 Difference]: Start difference. First operand 137 states. Second operand 137 states. [2020-07-11 02:28:47,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:47,382 INFO L93 Difference]: Finished difference Result 137 states and 151 transitions. [2020-07-11 02:28:47,383 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 151 transitions. [2020-07-11 02:28:47,383 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:47,383 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:47,383 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:47,383 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:47,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 137 states. [2020-07-11 02:28:47,387 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 137 states to 137 states and 151 transitions. [2020-07-11 02:28:47,388 INFO L78 Accepts]: Start accepts. Automaton has 137 states and 151 transitions. Word has length 72 [2020-07-11 02:28:47,388 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:47,388 INFO L479 AbstractCegarLoop]: Abstraction has 137 states and 151 transitions. [2020-07-11 02:28:47,388 INFO L480 AbstractCegarLoop]: Interpolant automaton has 4 states. [2020-07-11 02:28:47,388 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 137 states and 151 transitions. [2020-07-11 02:28:47,565 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 151 edges. 151 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:47,566 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 151 transitions. [2020-07-11 02:28:47,567 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2020-07-11 02:28:47,567 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:47,567 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-11 02:28:47,567 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2020-07-11 02:28:47,567 INFO L427 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:47,568 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:47,568 INFO L82 PathProgramCache]: Analyzing trace with hash 588909148, now seen corresponding path program 1 times [2020-07-11 02:28:47,568 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:47,568 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1126800115] [2020-07-11 02:28:47,568 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:47,584 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:47,738 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:47,743 INFO L280 TraceCheckUtils]: 0: Hoare triple {10899#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {10877#true} is VALID [2020-07-11 02:28:47,743 INFO L280 TraceCheckUtils]: 1: Hoare triple {10877#true} #valid := #valid[0 := 0]; {10877#true} is VALID [2020-07-11 02:28:47,744 INFO L280 TraceCheckUtils]: 2: Hoare triple {10877#true} assume 0 < #StackHeapBarrier; {10877#true} is VALID [2020-07-11 02:28:47,744 INFO L280 TraceCheckUtils]: 3: Hoare triple {10877#true} assume true; {10877#true} is VALID [2020-07-11 02:28:47,744 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {10877#true} {10877#true} #205#return; {10877#true} is VALID [2020-07-11 02:28:47,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:47,751 INFO L280 TraceCheckUtils]: 0: Hoare triple {10877#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {10877#true} is VALID [2020-07-11 02:28:47,751 INFO L280 TraceCheckUtils]: 1: Hoare triple {10877#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {10877#true} is VALID [2020-07-11 02:28:47,751 INFO L280 TraceCheckUtils]: 2: Hoare triple {10877#true} ~n := #in~n; {10877#true} is VALID [2020-07-11 02:28:47,752 INFO L280 TraceCheckUtils]: 3: Hoare triple {10877#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {10877#true} is VALID [2020-07-11 02:28:47,752 INFO L280 TraceCheckUtils]: 4: Hoare triple {10877#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {10877#true} is VALID [2020-07-11 02:28:47,752 INFO L280 TraceCheckUtils]: 5: Hoare triple {10877#true} havoc #t~ret0.base, #t~ret0.offset; {10877#true} is VALID [2020-07-11 02:28:47,752 INFO L280 TraceCheckUtils]: 6: Hoare triple {10877#true} assume true; {10877#true} is VALID [2020-07-11 02:28:47,754 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {10877#true} {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} #201#return; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,755 INFO L263 TraceCheckUtils]: 0: Hoare triple {10877#true} call ULTIMATE.init(); {10899#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:47,755 INFO L280 TraceCheckUtils]: 1: Hoare triple {10899#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {10877#true} is VALID [2020-07-11 02:28:47,756 INFO L280 TraceCheckUtils]: 2: Hoare triple {10877#true} #valid := #valid[0 := 0]; {10877#true} is VALID [2020-07-11 02:28:47,756 INFO L280 TraceCheckUtils]: 3: Hoare triple {10877#true} assume 0 < #StackHeapBarrier; {10877#true} is VALID [2020-07-11 02:28:47,756 INFO L280 TraceCheckUtils]: 4: Hoare triple {10877#true} assume true; {10877#true} is VALID [2020-07-11 02:28:47,756 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {10877#true} {10877#true} #205#return; {10877#true} is VALID [2020-07-11 02:28:47,756 INFO L263 TraceCheckUtils]: 6: Hoare triple {10877#true} call #t~ret21 := main(); {10877#true} is VALID [2020-07-11 02:28:47,757 INFO L280 TraceCheckUtils]: 7: Hoare triple {10877#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {10877#true} is VALID [2020-07-11 02:28:47,757 INFO L280 TraceCheckUtils]: 8: Hoare triple {10877#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {10877#true} is VALID [2020-07-11 02:28:47,757 INFO L263 TraceCheckUtils]: 9: Hoare triple {10877#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {10877#true} is VALID [2020-07-11 02:28:47,757 INFO L280 TraceCheckUtils]: 10: Hoare triple {10877#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {10877#true} is VALID [2020-07-11 02:28:47,758 INFO L280 TraceCheckUtils]: 11: Hoare triple {10877#true} ~start~0 := 0; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,759 INFO L280 TraceCheckUtils]: 12: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,759 INFO L280 TraceCheckUtils]: 13: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} ~j~0 := -1; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,760 INFO L280 TraceCheckUtils]: 14: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,760 INFO L280 TraceCheckUtils]: 15: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} assume !(~str.base == 0 && ~str.offset == 0); {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,761 INFO L280 TraceCheckUtils]: 16: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,761 INFO L280 TraceCheckUtils]: 17: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,762 INFO L280 TraceCheckUtils]: 18: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,763 INFO L280 TraceCheckUtils]: 19: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,764 INFO L280 TraceCheckUtils]: 20: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,765 INFO L280 TraceCheckUtils]: 21: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} assume #t~switch4; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,766 INFO L280 TraceCheckUtils]: 22: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,766 INFO L280 TraceCheckUtils]: 23: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,767 INFO L280 TraceCheckUtils]: 24: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} assume #t~short7; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,768 INFO L280 TraceCheckUtils]: 25: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} assume !!#t~short7; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,769 INFO L280 TraceCheckUtils]: 26: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} havoc #t~mem5; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,770 INFO L280 TraceCheckUtils]: 27: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} havoc #t~short7; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,771 INFO L280 TraceCheckUtils]: 28: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} havoc #t~mem6; {10884#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,772 INFO L280 TraceCheckUtils]: 29: Hoare triple {10884#(= 0 parse_expression_list_~start~0)} #t~post8 := ~start~0; {10885#(= 0 |parse_expression_list_#t~post8|)} is VALID [2020-07-11 02:28:47,773 INFO L280 TraceCheckUtils]: 30: Hoare triple {10885#(= 0 |parse_expression_list_#t~post8|)} ~start~0 := 1 + #t~post8; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,774 INFO L280 TraceCheckUtils]: 31: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} havoc #t~post8; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,775 INFO L280 TraceCheckUtils]: 32: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,776 INFO L280 TraceCheckUtils]: 33: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,777 INFO L280 TraceCheckUtils]: 34: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} assume !#t~short7; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,778 INFO L280 TraceCheckUtils]: 35: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,778 INFO L280 TraceCheckUtils]: 36: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} #t~short7 := 9 == #t~mem6; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,779 INFO L280 TraceCheckUtils]: 37: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} assume !#t~short7; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,780 INFO L280 TraceCheckUtils]: 38: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} havoc #t~mem5; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,781 INFO L280 TraceCheckUtils]: 39: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} havoc #t~short7; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,781 INFO L280 TraceCheckUtils]: 40: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} havoc #t~mem6; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,782 INFO L280 TraceCheckUtils]: 41: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,783 INFO L280 TraceCheckUtils]: 42: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} assume !(34 == #t~mem9); {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,784 INFO L280 TraceCheckUtils]: 43: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} havoc #t~mem9; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,785 INFO L280 TraceCheckUtils]: 44: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {10886#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,786 INFO L280 TraceCheckUtils]: 45: Hoare triple {10886#(<= 1 parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {10887#(or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} is VALID [2020-07-11 02:28:47,787 INFO L280 TraceCheckUtils]: 46: Hoare triple {10887#(or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} assume !#t~short14; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,788 INFO L280 TraceCheckUtils]: 47: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short14; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,788 INFO L280 TraceCheckUtils]: 48: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem12; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,789 INFO L280 TraceCheckUtils]: 49: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem11; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,790 INFO L280 TraceCheckUtils]: 50: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short13; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,790 INFO L280 TraceCheckUtils]: 51: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short14; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,791 INFO L280 TraceCheckUtils]: 52: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,791 INFO L280 TraceCheckUtils]: 53: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short17; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,792 INFO L280 TraceCheckUtils]: 54: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short17; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,793 INFO L280 TraceCheckUtils]: 55: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem16; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,794 INFO L280 TraceCheckUtils]: 56: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short17; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,794 INFO L280 TraceCheckUtils]: 57: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,795 INFO L263 TraceCheckUtils]: 58: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} 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)); {10877#true} is VALID [2020-07-11 02:28:47,795 INFO L280 TraceCheckUtils]: 59: Hoare triple {10877#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {10877#true} is VALID [2020-07-11 02:28:47,795 INFO L280 TraceCheckUtils]: 60: Hoare triple {10877#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {10877#true} is VALID [2020-07-11 02:28:47,796 INFO L280 TraceCheckUtils]: 61: Hoare triple {10877#true} ~n := #in~n; {10877#true} is VALID [2020-07-11 02:28:47,796 INFO L280 TraceCheckUtils]: 62: Hoare triple {10877#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {10877#true} is VALID [2020-07-11 02:28:47,796 INFO L280 TraceCheckUtils]: 63: Hoare triple {10877#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {10877#true} is VALID [2020-07-11 02:28:47,797 INFO L280 TraceCheckUtils]: 64: Hoare triple {10877#true} havoc #t~ret0.base, #t~ret0.offset; {10877#true} is VALID [2020-07-11 02:28:47,797 INFO L280 TraceCheckUtils]: 65: Hoare triple {10877#true} assume true; {10877#true} is VALID [2020-07-11 02:28:47,799 INFO L275 TraceCheckUtils]: 66: Hoare quadruple {10877#true} {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} #201#return; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,800 INFO L280 TraceCheckUtils]: 67: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~ret19.base, #t~ret19.offset; {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:47,802 INFO L263 TraceCheckUtils]: 68: Hoare triple {10888#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {10897#(not (= 0 |__VERIFIER_assert_#in~cond|))} is VALID [2020-07-11 02:28:47,803 INFO L280 TraceCheckUtils]: 69: Hoare triple {10897#(not (= 0 |__VERIFIER_assert_#in~cond|))} ~cond := #in~cond; {10898#(not (= 0 __VERIFIER_assert_~cond))} is VALID [2020-07-11 02:28:47,804 INFO L280 TraceCheckUtils]: 70: Hoare triple {10898#(not (= 0 __VERIFIER_assert_~cond))} assume 0 == ~cond; {10878#false} is VALID [2020-07-11 02:28:47,804 INFO L280 TraceCheckUtils]: 71: Hoare triple {10878#false} assume !false; {10878#false} is VALID [2020-07-11 02:28:47,814 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-11 02:28:47,815 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1126800115] [2020-07-11 02:28:47,815 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-11 02:28:47,816 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2020-07-11 02:28:47,816 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [886678290] [2020-07-11 02:28:47,816 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 72 [2020-07-11 02:28:47,817 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:47,817 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-11 02:28:47,901 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-11 02:28:47,902 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-11 02:28:47,902 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:47,902 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-11 02:28:47,903 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2020-07-11 02:28:47,903 INFO L87 Difference]: Start difference. First operand 137 states and 151 transitions. Second operand 10 states. [2020-07-11 02:28:50,191 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:50,191 INFO L93 Difference]: Finished difference Result 389 states and 436 transitions. [2020-07-11 02:28:50,192 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2020-07-11 02:28:50,192 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 72 [2020-07-11 02:28:50,192 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:50,193 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-11 02:28:50,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 376 transitions. [2020-07-11 02:28:50,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-11 02:28:50,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 376 transitions. [2020-07-11 02:28:50,204 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 15 states and 376 transitions. [2020-07-11 02:28:50,743 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 376 edges. 376 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:50,750 INFO L225 Difference]: With dead ends: 389 [2020-07-11 02:28:50,751 INFO L226 Difference]: Without dead ends: 296 [2020-07-11 02:28:50,751 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=271, Unknown=0, NotChecked=0, Total=342 [2020-07-11 02:28:50,752 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 296 states. [2020-07-11 02:28:50,992 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 296 to 200. [2020-07-11 02:28:50,993 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:50,993 INFO L82 GeneralOperation]: Start isEquivalent. First operand 296 states. Second operand 200 states. [2020-07-11 02:28:50,993 INFO L74 IsIncluded]: Start isIncluded. First operand 296 states. Second operand 200 states. [2020-07-11 02:28:50,993 INFO L87 Difference]: Start difference. First operand 296 states. Second operand 200 states. [2020-07-11 02:28:51,002 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:51,002 INFO L93 Difference]: Finished difference Result 296 states and 332 transitions. [2020-07-11 02:28:51,002 INFO L276 IsEmpty]: Start isEmpty. Operand 296 states and 332 transitions. [2020-07-11 02:28:51,003 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:51,004 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:51,004 INFO L74 IsIncluded]: Start isIncluded. First operand 200 states. Second operand 296 states. [2020-07-11 02:28:51,004 INFO L87 Difference]: Start difference. First operand 200 states. Second operand 296 states. [2020-07-11 02:28:51,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:51,014 INFO L93 Difference]: Finished difference Result 296 states and 332 transitions. [2020-07-11 02:28:51,014 INFO L276 IsEmpty]: Start isEmpty. Operand 296 states and 332 transitions. [2020-07-11 02:28:51,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:51,016 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:51,016 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:51,016 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:51,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 200 states. [2020-07-11 02:28:51,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 200 states to 200 states and 223 transitions. [2020-07-11 02:28:51,022 INFO L78 Accepts]: Start accepts. Automaton has 200 states and 223 transitions. Word has length 72 [2020-07-11 02:28:51,022 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:51,022 INFO L479 AbstractCegarLoop]: Abstraction has 200 states and 223 transitions. [2020-07-11 02:28:51,022 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-11 02:28:51,022 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 200 states and 223 transitions. [2020-07-11 02:28:51,293 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 223 edges. 223 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:51,294 INFO L276 IsEmpty]: Start isEmpty. Operand 200 states and 223 transitions. [2020-07-11 02:28:51,296 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2020-07-11 02:28:51,296 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:51,296 INFO L422 BasicCegarLoop]: trace histogram [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-11 02:28:51,296 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2020-07-11 02:28:51,297 INFO L427 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:51,297 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:51,297 INFO L82 PathProgramCache]: Analyzing trace with hash 69190993, now seen corresponding path program 1 times [2020-07-11 02:28:51,297 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:51,298 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [890953460] [2020-07-11 02:28:51,298 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:51,321 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:51,444 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:51,447 INFO L280 TraceCheckUtils]: 0: Hoare triple {12710#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {12690#true} is VALID [2020-07-11 02:28:51,447 INFO L280 TraceCheckUtils]: 1: Hoare triple {12690#true} #valid := #valid[0 := 0]; {12690#true} is VALID [2020-07-11 02:28:51,447 INFO L280 TraceCheckUtils]: 2: Hoare triple {12690#true} assume 0 < #StackHeapBarrier; {12690#true} is VALID [2020-07-11 02:28:51,448 INFO L280 TraceCheckUtils]: 3: Hoare triple {12690#true} assume true; {12690#true} is VALID [2020-07-11 02:28:51,448 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {12690#true} {12690#true} #205#return; {12690#true} is VALID [2020-07-11 02:28:51,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:51,454 INFO L280 TraceCheckUtils]: 0: Hoare triple {12690#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {12690#true} is VALID [2020-07-11 02:28:51,454 INFO L280 TraceCheckUtils]: 1: Hoare triple {12690#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {12690#true} is VALID [2020-07-11 02:28:51,455 INFO L280 TraceCheckUtils]: 2: Hoare triple {12690#true} ~n := #in~n; {12690#true} is VALID [2020-07-11 02:28:51,455 INFO L280 TraceCheckUtils]: 3: Hoare triple {12690#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {12690#true} is VALID [2020-07-11 02:28:51,455 INFO L280 TraceCheckUtils]: 4: Hoare triple {12690#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {12690#true} is VALID [2020-07-11 02:28:51,455 INFO L280 TraceCheckUtils]: 5: Hoare triple {12690#true} havoc #t~ret0.base, #t~ret0.offset; {12690#true} is VALID [2020-07-11 02:28:51,456 INFO L280 TraceCheckUtils]: 6: Hoare triple {12690#true} assume true; {12690#true} is VALID [2020-07-11 02:28:51,457 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {12690#true} {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} #201#return; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,458 INFO L263 TraceCheckUtils]: 0: Hoare triple {12690#true} call ULTIMATE.init(); {12710#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:51,458 INFO L280 TraceCheckUtils]: 1: Hoare triple {12710#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {12690#true} is VALID [2020-07-11 02:28:51,458 INFO L280 TraceCheckUtils]: 2: Hoare triple {12690#true} #valid := #valid[0 := 0]; {12690#true} is VALID [2020-07-11 02:28:51,459 INFO L280 TraceCheckUtils]: 3: Hoare triple {12690#true} assume 0 < #StackHeapBarrier; {12690#true} is VALID [2020-07-11 02:28:51,459 INFO L280 TraceCheckUtils]: 4: Hoare triple {12690#true} assume true; {12690#true} is VALID [2020-07-11 02:28:51,459 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {12690#true} {12690#true} #205#return; {12690#true} is VALID [2020-07-11 02:28:51,459 INFO L263 TraceCheckUtils]: 6: Hoare triple {12690#true} call #t~ret21 := main(); {12690#true} is VALID [2020-07-11 02:28:51,459 INFO L280 TraceCheckUtils]: 7: Hoare triple {12690#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {12690#true} is VALID [2020-07-11 02:28:51,460 INFO L280 TraceCheckUtils]: 8: Hoare triple {12690#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {12690#true} is VALID [2020-07-11 02:28:51,460 INFO L263 TraceCheckUtils]: 9: Hoare triple {12690#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {12690#true} is VALID [2020-07-11 02:28:51,460 INFO L280 TraceCheckUtils]: 10: Hoare triple {12690#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {12690#true} is VALID [2020-07-11 02:28:51,460 INFO L280 TraceCheckUtils]: 11: Hoare triple {12690#true} ~start~0 := 0; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,461 INFO L280 TraceCheckUtils]: 12: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,461 INFO L280 TraceCheckUtils]: 13: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} ~j~0 := -1; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,462 INFO L280 TraceCheckUtils]: 14: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,462 INFO L280 TraceCheckUtils]: 15: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} assume !(~str.base == 0 && ~str.offset == 0); {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,463 INFO L280 TraceCheckUtils]: 16: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,463 INFO L280 TraceCheckUtils]: 17: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,464 INFO L280 TraceCheckUtils]: 18: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,464 INFO L280 TraceCheckUtils]: 19: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,465 INFO L280 TraceCheckUtils]: 20: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,465 INFO L280 TraceCheckUtils]: 21: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} assume !#t~switch4; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,466 INFO L280 TraceCheckUtils]: 22: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~mem3; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,466 INFO L280 TraceCheckUtils]: 23: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~switch4; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,467 INFO L280 TraceCheckUtils]: 24: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem1 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L51-1 {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,468 INFO L280 TraceCheckUtils]: 25: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} assume !!(0 != #t~mem1); {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,468 INFO L280 TraceCheckUtils]: 26: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~mem1; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,469 INFO L280 TraceCheckUtils]: 27: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,470 INFO L280 TraceCheckUtils]: 28: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,471 INFO L280 TraceCheckUtils]: 29: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,471 INFO L280 TraceCheckUtils]: 30: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,472 INFO L280 TraceCheckUtils]: 31: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,472 INFO L280 TraceCheckUtils]: 32: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} assume #t~switch4; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,473 INFO L280 TraceCheckUtils]: 33: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,474 INFO L280 TraceCheckUtils]: 34: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,475 INFO L280 TraceCheckUtils]: 35: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} assume !#t~short7; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,475 INFO L280 TraceCheckUtils]: 36: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,476 INFO L280 TraceCheckUtils]: 37: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} #t~short7 := 9 == #t~mem6; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,476 INFO L280 TraceCheckUtils]: 38: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} assume !#t~short7; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,477 INFO L280 TraceCheckUtils]: 39: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~mem5; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,477 INFO L280 TraceCheckUtils]: 40: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~short7; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,478 INFO L280 TraceCheckUtils]: 41: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~mem6; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,478 INFO L280 TraceCheckUtils]: 42: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,479 INFO L280 TraceCheckUtils]: 43: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} assume !(34 == #t~mem9); {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,479 INFO L280 TraceCheckUtils]: 44: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} havoc #t~mem9; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,480 INFO L280 TraceCheckUtils]: 45: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {12697#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:51,481 INFO L280 TraceCheckUtils]: 46: Hoare triple {12697#(= 0 parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {12698#(and (or (<= parse_expression_list_~j~0 0) |parse_expression_list_#t~short14|) (= 0 parse_expression_list_~start~0))} is VALID [2020-07-11 02:28:51,481 INFO L280 TraceCheckUtils]: 47: Hoare triple {12698#(and (or (<= parse_expression_list_~j~0 0) |parse_expression_list_#t~short14|) (= 0 parse_expression_list_~start~0))} assume !#t~short14; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,482 INFO L280 TraceCheckUtils]: 48: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} assume !#t~short14; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,483 INFO L280 TraceCheckUtils]: 49: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} havoc #t~mem12; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,484 INFO L280 TraceCheckUtils]: 50: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} havoc #t~mem11; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,484 INFO L280 TraceCheckUtils]: 51: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} havoc #t~short13; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,485 INFO L280 TraceCheckUtils]: 52: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} havoc #t~short14; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,486 INFO L280 TraceCheckUtils]: 53: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} #t~short17 := 0 < ~j~0; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,487 INFO L280 TraceCheckUtils]: 54: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} assume !#t~short17; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,487 INFO L280 TraceCheckUtils]: 55: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} assume !#t~short17; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,488 INFO L280 TraceCheckUtils]: 56: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} havoc #t~mem16; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,489 INFO L280 TraceCheckUtils]: 57: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} havoc #t~short17; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,489 INFO L280 TraceCheckUtils]: 58: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} assume ~start~0 <= ~j~0; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,489 INFO L263 TraceCheckUtils]: 59: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} 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)); {12690#true} is VALID [2020-07-11 02:28:51,490 INFO L280 TraceCheckUtils]: 60: Hoare triple {12690#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {12690#true} is VALID [2020-07-11 02:28:51,490 INFO L280 TraceCheckUtils]: 61: Hoare triple {12690#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {12690#true} is VALID [2020-07-11 02:28:51,490 INFO L280 TraceCheckUtils]: 62: Hoare triple {12690#true} ~n := #in~n; {12690#true} is VALID [2020-07-11 02:28:51,490 INFO L280 TraceCheckUtils]: 63: Hoare triple {12690#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {12690#true} is VALID [2020-07-11 02:28:51,491 INFO L280 TraceCheckUtils]: 64: Hoare triple {12690#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {12690#true} is VALID [2020-07-11 02:28:51,491 INFO L280 TraceCheckUtils]: 65: Hoare triple {12690#true} havoc #t~ret0.base, #t~ret0.offset; {12690#true} is VALID [2020-07-11 02:28:51,491 INFO L280 TraceCheckUtils]: 66: Hoare triple {12690#true} assume true; {12690#true} is VALID [2020-07-11 02:28:51,493 INFO L275 TraceCheckUtils]: 67: Hoare quadruple {12690#true} {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} #201#return; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,493 INFO L280 TraceCheckUtils]: 68: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} havoc #t~ret19.base, #t~ret19.offset; {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} is VALID [2020-07-11 02:28:51,494 INFO L263 TraceCheckUtils]: 69: Hoare triple {12699#(and (= 0 parse_expression_list_~start~0) (<= parse_expression_list_~j~0 0))} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {12708#(not (= 0 |__VERIFIER_assert_#in~cond|))} is VALID [2020-07-11 02:28:51,495 INFO L280 TraceCheckUtils]: 70: Hoare triple {12708#(not (= 0 |__VERIFIER_assert_#in~cond|))} ~cond := #in~cond; {12709#(not (= 0 __VERIFIER_assert_~cond))} is VALID [2020-07-11 02:28:51,496 INFO L280 TraceCheckUtils]: 71: Hoare triple {12709#(not (= 0 __VERIFIER_assert_~cond))} assume 0 == ~cond; {12691#false} is VALID [2020-07-11 02:28:51,496 INFO L280 TraceCheckUtils]: 72: Hoare triple {12691#false} assume !false; {12691#false} is VALID [2020-07-11 02:28:51,503 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2020-07-11 02:28:51,503 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [890953460] [2020-07-11 02:28:51,503 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:51,504 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-11 02:28:51,504 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [127933957] [2020-07-11 02:28:51,504 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 73 [2020-07-11 02:28:51,505 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:51,505 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-11 02:28:51,570 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:51,570 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-11 02:28:51,571 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:51,571 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-11 02:28:51,571 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=40, Unknown=0, NotChecked=0, Total=56 [2020-07-11 02:28:51,571 INFO L87 Difference]: Start difference. First operand 200 states and 223 transitions. Second operand 8 states. [2020-07-11 02:28:53,046 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:53,046 INFO L93 Difference]: Finished difference Result 288 states and 323 transitions. [2020-07-11 02:28:53,046 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2020-07-11 02:28:53,046 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 73 [2020-07-11 02:28:53,047 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:53,047 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-11 02:28:53,049 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 223 transitions. [2020-07-11 02:28:53,049 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-11 02:28:53,051 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 223 transitions. [2020-07-11 02:28:53,051 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 223 transitions. [2020-07-11 02:28:53,313 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 223 edges. 223 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:53,321 INFO L225 Difference]: With dead ends: 288 [2020-07-11 02:28:53,322 INFO L226 Difference]: Without dead ends: 286 [2020-07-11 02:28:53,322 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 21 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=42, Invalid=114, Unknown=0, NotChecked=0, Total=156 [2020-07-11 02:28:53,323 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 286 states. [2020-07-11 02:28:53,736 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 286 to 254. [2020-07-11 02:28:53,736 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:53,737 INFO L82 GeneralOperation]: Start isEquivalent. First operand 286 states. Second operand 254 states. [2020-07-11 02:28:53,737 INFO L74 IsIncluded]: Start isIncluded. First operand 286 states. Second operand 254 states. [2020-07-11 02:28:53,737 INFO L87 Difference]: Start difference. First operand 286 states. Second operand 254 states. [2020-07-11 02:28:53,746 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:53,747 INFO L93 Difference]: Finished difference Result 286 states and 321 transitions. [2020-07-11 02:28:53,747 INFO L276 IsEmpty]: Start isEmpty. Operand 286 states and 321 transitions. [2020-07-11 02:28:53,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:53,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:53,748 INFO L74 IsIncluded]: Start isIncluded. First operand 254 states. Second operand 286 states. [2020-07-11 02:28:53,748 INFO L87 Difference]: Start difference. First operand 254 states. Second operand 286 states. [2020-07-11 02:28:53,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:53,756 INFO L93 Difference]: Finished difference Result 286 states and 321 transitions. [2020-07-11 02:28:53,756 INFO L276 IsEmpty]: Start isEmpty. Operand 286 states and 321 transitions. [2020-07-11 02:28:53,757 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:53,757 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:53,757 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:53,757 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:53,757 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 254 states. [2020-07-11 02:28:53,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 254 states to 254 states and 285 transitions. [2020-07-11 02:28:53,783 INFO L78 Accepts]: Start accepts. Automaton has 254 states and 285 transitions. Word has length 73 [2020-07-11 02:28:53,783 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:53,783 INFO L479 AbstractCegarLoop]: Abstraction has 254 states and 285 transitions. [2020-07-11 02:28:53,783 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-11 02:28:53,784 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 254 states and 285 transitions. [2020-07-11 02:28:54,155 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 285 edges. 285 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:54,155 INFO L276 IsEmpty]: Start isEmpty. Operand 254 states and 285 transitions. [2020-07-11 02:28:54,156 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 76 [2020-07-11 02:28:54,157 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:54,157 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-11 02:28:54,157 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9 [2020-07-11 02:28:54,157 INFO L427 AbstractCegarLoop]: === Iteration 11 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:54,157 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:54,158 INFO L82 PathProgramCache]: Analyzing trace with hash 1474625812, now seen corresponding path program 1 times [2020-07-11 02:28:54,158 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:54,158 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1385135094] [2020-07-11 02:28:54,158 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:54,179 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:54,352 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:54,357 INFO L280 TraceCheckUtils]: 0: Hoare triple {14403#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {14379#true} is VALID [2020-07-11 02:28:54,358 INFO L280 TraceCheckUtils]: 1: Hoare triple {14379#true} #valid := #valid[0 := 0]; {14379#true} is VALID [2020-07-11 02:28:54,358 INFO L280 TraceCheckUtils]: 2: Hoare triple {14379#true} assume 0 < #StackHeapBarrier; {14379#true} is VALID [2020-07-11 02:28:54,358 INFO L280 TraceCheckUtils]: 3: Hoare triple {14379#true} assume true; {14379#true} is VALID [2020-07-11 02:28:54,358 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {14379#true} {14379#true} #205#return; {14379#true} is VALID [2020-07-11 02:28:54,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:54,364 INFO L280 TraceCheckUtils]: 0: Hoare triple {14379#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {14379#true} is VALID [2020-07-11 02:28:54,365 INFO L280 TraceCheckUtils]: 1: Hoare triple {14379#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {14379#true} is VALID [2020-07-11 02:28:54,365 INFO L280 TraceCheckUtils]: 2: Hoare triple {14379#true} ~n := #in~n; {14379#true} is VALID [2020-07-11 02:28:54,365 INFO L280 TraceCheckUtils]: 3: Hoare triple {14379#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {14379#true} is VALID [2020-07-11 02:28:54,365 INFO L280 TraceCheckUtils]: 4: Hoare triple {14379#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {14379#true} is VALID [2020-07-11 02:28:54,365 INFO L280 TraceCheckUtils]: 5: Hoare triple {14379#true} havoc #t~ret0.base, #t~ret0.offset; {14379#true} is VALID [2020-07-11 02:28:54,366 INFO L280 TraceCheckUtils]: 6: Hoare triple {14379#true} assume true; {14379#true} is VALID [2020-07-11 02:28:54,367 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {14379#true} {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #201#return; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,368 INFO L263 TraceCheckUtils]: 0: Hoare triple {14379#true} call ULTIMATE.init(); {14403#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:54,368 INFO L280 TraceCheckUtils]: 1: Hoare triple {14403#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {14379#true} is VALID [2020-07-11 02:28:54,368 INFO L280 TraceCheckUtils]: 2: Hoare triple {14379#true} #valid := #valid[0 := 0]; {14379#true} is VALID [2020-07-11 02:28:54,368 INFO L280 TraceCheckUtils]: 3: Hoare triple {14379#true} assume 0 < #StackHeapBarrier; {14379#true} is VALID [2020-07-11 02:28:54,369 INFO L280 TraceCheckUtils]: 4: Hoare triple {14379#true} assume true; {14379#true} is VALID [2020-07-11 02:28:54,369 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {14379#true} {14379#true} #205#return; {14379#true} is VALID [2020-07-11 02:28:54,369 INFO L263 TraceCheckUtils]: 6: Hoare triple {14379#true} call #t~ret21 := main(); {14379#true} is VALID [2020-07-11 02:28:54,369 INFO L280 TraceCheckUtils]: 7: Hoare triple {14379#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {14379#true} is VALID [2020-07-11 02:28:54,369 INFO L280 TraceCheckUtils]: 8: Hoare triple {14379#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {14379#true} is VALID [2020-07-11 02:28:54,369 INFO L263 TraceCheckUtils]: 9: Hoare triple {14379#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {14379#true} is VALID [2020-07-11 02:28:54,370 INFO L280 TraceCheckUtils]: 10: Hoare triple {14379#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {14379#true} is VALID [2020-07-11 02:28:54,370 INFO L280 TraceCheckUtils]: 11: Hoare triple {14379#true} ~start~0 := 0; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,371 INFO L280 TraceCheckUtils]: 12: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,371 INFO L280 TraceCheckUtils]: 13: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} ~j~0 := -1; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,372 INFO L280 TraceCheckUtils]: 14: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,372 INFO L280 TraceCheckUtils]: 15: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} assume !(~str.base == 0 && ~str.offset == 0); {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,373 INFO L280 TraceCheckUtils]: 16: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,373 INFO L280 TraceCheckUtils]: 17: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,374 INFO L280 TraceCheckUtils]: 18: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,374 INFO L280 TraceCheckUtils]: 19: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,375 INFO L280 TraceCheckUtils]: 20: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,375 INFO L280 TraceCheckUtils]: 21: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} assume #t~switch4; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,376 INFO L280 TraceCheckUtils]: 22: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,376 INFO L280 TraceCheckUtils]: 23: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,377 INFO L280 TraceCheckUtils]: 24: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} assume #t~short7; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,377 INFO L280 TraceCheckUtils]: 25: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} assume !!#t~short7; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,378 INFO L280 TraceCheckUtils]: 26: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} havoc #t~mem5; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,378 INFO L280 TraceCheckUtils]: 27: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} havoc #t~short7; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,379 INFO L280 TraceCheckUtils]: 28: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} havoc #t~mem6; {14386#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,379 INFO L280 TraceCheckUtils]: 29: Hoare triple {14386#(= 0 parse_expression_list_~start~0)} #t~post8 := ~start~0; {14387#(= 0 |parse_expression_list_#t~post8|)} is VALID [2020-07-11 02:28:54,380 INFO L280 TraceCheckUtils]: 30: Hoare triple {14387#(= 0 |parse_expression_list_#t~post8|)} ~start~0 := 1 + #t~post8; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,380 INFO L280 TraceCheckUtils]: 31: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} havoc #t~post8; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,381 INFO L280 TraceCheckUtils]: 32: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,382 INFO L280 TraceCheckUtils]: 33: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,382 INFO L280 TraceCheckUtils]: 34: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} assume !#t~short7; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,383 INFO L280 TraceCheckUtils]: 35: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,383 INFO L280 TraceCheckUtils]: 36: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} #t~short7 := 9 == #t~mem6; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,384 INFO L280 TraceCheckUtils]: 37: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} assume !#t~short7; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,384 INFO L280 TraceCheckUtils]: 38: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} havoc #t~mem5; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,385 INFO L280 TraceCheckUtils]: 39: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} havoc #t~short7; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,385 INFO L280 TraceCheckUtils]: 40: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} havoc #t~mem6; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,386 INFO L280 TraceCheckUtils]: 41: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,386 INFO L280 TraceCheckUtils]: 42: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} assume 34 == #t~mem9; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,387 INFO L280 TraceCheckUtils]: 43: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} havoc #t~mem9; {14388#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,388 INFO L280 TraceCheckUtils]: 44: Hoare triple {14388#(<= 1 parse_expression_list_~start~0)} #t~post10 := ~start~0; {14389#(<= 1 |parse_expression_list_#t~post10|)} is VALID [2020-07-11 02:28:54,389 INFO L280 TraceCheckUtils]: 45: Hoare triple {14389#(<= 1 |parse_expression_list_#t~post10|)} ~start~0 := 1 + #t~post10; {14390#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,389 INFO L280 TraceCheckUtils]: 46: Hoare triple {14390#(<= 2 parse_expression_list_~start~0)} havoc #t~post10; {14390#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,390 INFO L280 TraceCheckUtils]: 47: Hoare triple {14390#(<= 2 parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {14390#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,391 INFO L280 TraceCheckUtils]: 48: Hoare triple {14390#(<= 2 parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {14391#(or (<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} is VALID [2020-07-11 02:28:54,391 INFO L280 TraceCheckUtils]: 49: Hoare triple {14391#(or (<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} assume !#t~short14; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,398 INFO L280 TraceCheckUtils]: 50: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,398 INFO L280 TraceCheckUtils]: 51: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem12; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,399 INFO L280 TraceCheckUtils]: 52: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem11; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,400 INFO L280 TraceCheckUtils]: 53: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short13; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,401 INFO L280 TraceCheckUtils]: 54: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short14; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,402 INFO L280 TraceCheckUtils]: 55: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,402 INFO L280 TraceCheckUtils]: 56: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short17; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,403 INFO L280 TraceCheckUtils]: 57: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short17; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,403 INFO L280 TraceCheckUtils]: 58: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem16; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,404 INFO L280 TraceCheckUtils]: 59: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short17; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,404 INFO L280 TraceCheckUtils]: 60: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,405 INFO L263 TraceCheckUtils]: 61: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} 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)); {14379#true} is VALID [2020-07-11 02:28:54,405 INFO L280 TraceCheckUtils]: 62: Hoare triple {14379#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {14379#true} is VALID [2020-07-11 02:28:54,405 INFO L280 TraceCheckUtils]: 63: Hoare triple {14379#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {14379#true} is VALID [2020-07-11 02:28:54,405 INFO L280 TraceCheckUtils]: 64: Hoare triple {14379#true} ~n := #in~n; {14379#true} is VALID [2020-07-11 02:28:54,405 INFO L280 TraceCheckUtils]: 65: Hoare triple {14379#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {14379#true} is VALID [2020-07-11 02:28:54,406 INFO L280 TraceCheckUtils]: 66: Hoare triple {14379#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {14379#true} is VALID [2020-07-11 02:28:54,406 INFO L280 TraceCheckUtils]: 67: Hoare triple {14379#true} havoc #t~ret0.base, #t~ret0.offset; {14379#true} is VALID [2020-07-11 02:28:54,406 INFO L280 TraceCheckUtils]: 68: Hoare triple {14379#true} assume true; {14379#true} is VALID [2020-07-11 02:28:54,407 INFO L275 TraceCheckUtils]: 69: Hoare quadruple {14379#true} {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #201#return; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,408 INFO L280 TraceCheckUtils]: 70: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~ret19.base, #t~ret19.offset; {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:54,409 INFO L263 TraceCheckUtils]: 71: Hoare triple {14392#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {14401#(not (= 0 |__VERIFIER_assert_#in~cond|))} is VALID [2020-07-11 02:28:54,410 INFO L280 TraceCheckUtils]: 72: Hoare triple {14401#(not (= 0 |__VERIFIER_assert_#in~cond|))} ~cond := #in~cond; {14402#(not (= 0 __VERIFIER_assert_~cond))} is VALID [2020-07-11 02:28:54,410 INFO L280 TraceCheckUtils]: 73: Hoare triple {14402#(not (= 0 __VERIFIER_assert_~cond))} assume 0 == ~cond; {14380#false} is VALID [2020-07-11 02:28:54,411 INFO L280 TraceCheckUtils]: 74: Hoare triple {14380#false} assume !false; {14380#false} is VALID [2020-07-11 02:28:54,417 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-11 02:28:54,417 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1385135094] [2020-07-11 02:28:54,417 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-11 02:28:54,418 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2020-07-11 02:28:54,418 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [908731719] [2020-07-11 02:28:54,418 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 75 [2020-07-11 02:28:54,419 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:54,419 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-11 02:28:54,497 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-11 02:28:54,497 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-11 02:28:54,498 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:54,498 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-11 02:28:54,498 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2020-07-11 02:28:54,498 INFO L87 Difference]: Start difference. First operand 254 states and 285 transitions. Second operand 12 states. [2020-07-11 02:28:57,457 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:57,457 INFO L93 Difference]: Finished difference Result 460 states and 517 transitions. [2020-07-11 02:28:57,457 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2020-07-11 02:28:57,457 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 75 [2020-07-11 02:28:57,457 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:28:57,458 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-11 02:28:57,464 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 423 transitions. [2020-07-11 02:28:57,464 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-11 02:28:57,468 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 423 transitions. [2020-07-11 02:28:57,469 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 423 transitions. [2020-07-11 02:28:57,931 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 423 edges. 423 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:57,940 INFO L225 Difference]: With dead ends: 460 [2020-07-11 02:28:57,941 INFO L226 Difference]: Without dead ends: 367 [2020-07-11 02:28:57,941 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 59 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=391, Unknown=0, NotChecked=0, Total=462 [2020-07-11 02:28:57,942 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 367 states. [2020-07-11 02:28:58,384 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 367 to 258. [2020-07-11 02:28:58,384 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:28:58,384 INFO L82 GeneralOperation]: Start isEquivalent. First operand 367 states. Second operand 258 states. [2020-07-11 02:28:58,384 INFO L74 IsIncluded]: Start isIncluded. First operand 367 states. Second operand 258 states. [2020-07-11 02:28:58,384 INFO L87 Difference]: Start difference. First operand 367 states. Second operand 258 states. [2020-07-11 02:28:58,397 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:58,397 INFO L93 Difference]: Finished difference Result 367 states and 413 transitions. [2020-07-11 02:28:58,397 INFO L276 IsEmpty]: Start isEmpty. Operand 367 states and 413 transitions. [2020-07-11 02:28:58,399 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:58,399 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:58,399 INFO L74 IsIncluded]: Start isIncluded. First operand 258 states. Second operand 367 states. [2020-07-11 02:28:58,399 INFO L87 Difference]: Start difference. First operand 258 states. Second operand 367 states. [2020-07-11 02:28:58,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:28:58,412 INFO L93 Difference]: Finished difference Result 367 states and 413 transitions. [2020-07-11 02:28:58,412 INFO L276 IsEmpty]: Start isEmpty. Operand 367 states and 413 transitions. [2020-07-11 02:28:58,414 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:28:58,414 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:28:58,414 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:28:58,414 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:28:58,414 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 258 states. [2020-07-11 02:28:58,422 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 289 transitions. [2020-07-11 02:28:58,422 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 289 transitions. Word has length 75 [2020-07-11 02:28:58,423 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:28:58,423 INFO L479 AbstractCegarLoop]: Abstraction has 258 states and 289 transitions. [2020-07-11 02:28:58,423 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-11 02:28:58,423 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 258 states and 289 transitions. [2020-07-11 02:28:58,840 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 289 edges. 289 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:58,841 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 289 transitions. [2020-07-11 02:28:58,843 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2020-07-11 02:28:58,843 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:28:58,843 INFO L422 BasicCegarLoop]: trace histogram [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-11 02:28:58,844 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable10 [2020-07-11 02:28:58,844 INFO L427 AbstractCegarLoop]: === Iteration 12 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:28:58,844 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:28:58,844 INFO L82 PathProgramCache]: Analyzing trace with hash 1908172287, now seen corresponding path program 1 times [2020-07-11 02:28:58,844 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:28:58,845 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1747829434] [2020-07-11 02:28:58,845 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:28:58,857 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:58,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:58,974 INFO L280 TraceCheckUtils]: 0: Hoare triple {16616#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {16596#true} is VALID [2020-07-11 02:28:58,974 INFO L280 TraceCheckUtils]: 1: Hoare triple {16596#true} #valid := #valid[0 := 0]; {16596#true} is VALID [2020-07-11 02:28:58,974 INFO L280 TraceCheckUtils]: 2: Hoare triple {16596#true} assume 0 < #StackHeapBarrier; {16596#true} is VALID [2020-07-11 02:28:58,974 INFO L280 TraceCheckUtils]: 3: Hoare triple {16596#true} assume true; {16596#true} is VALID [2020-07-11 02:28:58,975 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {16596#true} {16596#true} #205#return; {16596#true} is VALID [2020-07-11 02:28:58,976 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:28:58,980 INFO L280 TraceCheckUtils]: 0: Hoare triple {16596#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {16596#true} is VALID [2020-07-11 02:28:58,980 INFO L280 TraceCheckUtils]: 1: Hoare triple {16596#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {16596#true} is VALID [2020-07-11 02:28:58,980 INFO L280 TraceCheckUtils]: 2: Hoare triple {16596#true} ~n := #in~n; {16596#true} is VALID [2020-07-11 02:28:58,981 INFO L280 TraceCheckUtils]: 3: Hoare triple {16596#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {16596#true} is VALID [2020-07-11 02:28:58,981 INFO L280 TraceCheckUtils]: 4: Hoare triple {16596#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {16596#true} is VALID [2020-07-11 02:28:58,981 INFO L280 TraceCheckUtils]: 5: Hoare triple {16596#true} havoc #t~ret0.base, #t~ret0.offset; {16596#true} is VALID [2020-07-11 02:28:58,981 INFO L280 TraceCheckUtils]: 6: Hoare triple {16596#true} assume true; {16596#true} is VALID [2020-07-11 02:28:58,981 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {16596#true} {16597#false} #201#return; {16597#false} is VALID [2020-07-11 02:28:58,982 INFO L263 TraceCheckUtils]: 0: Hoare triple {16596#true} call ULTIMATE.init(); {16616#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:28:58,982 INFO L280 TraceCheckUtils]: 1: Hoare triple {16616#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {16596#true} is VALID [2020-07-11 02:28:58,983 INFO L280 TraceCheckUtils]: 2: Hoare triple {16596#true} #valid := #valid[0 := 0]; {16596#true} is VALID [2020-07-11 02:28:58,983 INFO L280 TraceCheckUtils]: 3: Hoare triple {16596#true} assume 0 < #StackHeapBarrier; {16596#true} is VALID [2020-07-11 02:28:58,983 INFO L280 TraceCheckUtils]: 4: Hoare triple {16596#true} assume true; {16596#true} is VALID [2020-07-11 02:28:58,983 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {16596#true} {16596#true} #205#return; {16596#true} is VALID [2020-07-11 02:28:58,983 INFO L263 TraceCheckUtils]: 6: Hoare triple {16596#true} call #t~ret21 := main(); {16596#true} is VALID [2020-07-11 02:28:58,984 INFO L280 TraceCheckUtils]: 7: Hoare triple {16596#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {16596#true} is VALID [2020-07-11 02:28:58,984 INFO L280 TraceCheckUtils]: 8: Hoare triple {16596#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {16596#true} is VALID [2020-07-11 02:28:58,984 INFO L263 TraceCheckUtils]: 9: Hoare triple {16596#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {16596#true} is VALID [2020-07-11 02:28:58,984 INFO L280 TraceCheckUtils]: 10: Hoare triple {16596#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {16596#true} is VALID [2020-07-11 02:28:58,985 INFO L280 TraceCheckUtils]: 11: Hoare triple {16596#true} ~start~0 := 0; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,986 INFO L280 TraceCheckUtils]: 12: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,986 INFO L280 TraceCheckUtils]: 13: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} ~j~0 := -1; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,987 INFO L280 TraceCheckUtils]: 14: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,987 INFO L280 TraceCheckUtils]: 15: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} assume !(~str.base == 0 && ~str.offset == 0); {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,988 INFO L280 TraceCheckUtils]: 16: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,988 INFO L280 TraceCheckUtils]: 17: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,989 INFO L280 TraceCheckUtils]: 18: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,989 INFO L280 TraceCheckUtils]: 19: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,990 INFO L280 TraceCheckUtils]: 20: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,990 INFO L280 TraceCheckUtils]: 21: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} assume !#t~switch4; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,991 INFO L280 TraceCheckUtils]: 22: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~mem3; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,992 INFO L280 TraceCheckUtils]: 23: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~switch4; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,992 INFO L280 TraceCheckUtils]: 24: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem1 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L51-1 {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,993 INFO L280 TraceCheckUtils]: 25: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} assume !!(0 != #t~mem1); {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,993 INFO L280 TraceCheckUtils]: 26: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~mem1; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,994 INFO L280 TraceCheckUtils]: 27: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,994 INFO L280 TraceCheckUtils]: 28: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,996 INFO L280 TraceCheckUtils]: 29: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,996 INFO L280 TraceCheckUtils]: 30: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,997 INFO L280 TraceCheckUtils]: 31: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,998 INFO L280 TraceCheckUtils]: 32: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} assume #t~switch4; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,998 INFO L280 TraceCheckUtils]: 33: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,999 INFO L280 TraceCheckUtils]: 34: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:58,999 INFO L280 TraceCheckUtils]: 35: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} assume !#t~short7; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,000 INFO L280 TraceCheckUtils]: 36: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,000 INFO L280 TraceCheckUtils]: 37: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} #t~short7 := 9 == #t~mem6; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,001 INFO L280 TraceCheckUtils]: 38: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} assume !#t~short7; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,002 INFO L280 TraceCheckUtils]: 39: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~mem5; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,002 INFO L280 TraceCheckUtils]: 40: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~short7; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,003 INFO L280 TraceCheckUtils]: 41: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~mem6; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,003 INFO L280 TraceCheckUtils]: 42: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,004 INFO L280 TraceCheckUtils]: 43: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} assume 34 == #t~mem9; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,004 INFO L280 TraceCheckUtils]: 44: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} havoc #t~mem9; {16603#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,005 INFO L280 TraceCheckUtils]: 45: Hoare triple {16603#(= 0 parse_expression_list_~start~0)} #t~post10 := ~start~0; {16604#(= 0 |parse_expression_list_#t~post10|)} is VALID [2020-07-11 02:28:59,006 INFO L280 TraceCheckUtils]: 46: Hoare triple {16604#(= 0 |parse_expression_list_#t~post10|)} ~start~0 := 1 + #t~post10; {16605#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,006 INFO L280 TraceCheckUtils]: 47: Hoare triple {16605#(<= 1 parse_expression_list_~start~0)} havoc #t~post10; {16605#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,007 INFO L280 TraceCheckUtils]: 48: Hoare triple {16605#(<= 1 parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {16605#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,007 INFO L280 TraceCheckUtils]: 49: Hoare triple {16605#(<= 1 parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {16606#(or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} is VALID [2020-07-11 02:28:59,008 INFO L280 TraceCheckUtils]: 50: Hoare triple {16606#(or (<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} assume !#t~short14; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,009 INFO L280 TraceCheckUtils]: 51: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short14; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,009 INFO L280 TraceCheckUtils]: 52: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem12; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,010 INFO L280 TraceCheckUtils]: 53: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem11; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,010 INFO L280 TraceCheckUtils]: 54: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short13; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,011 INFO L280 TraceCheckUtils]: 55: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short14; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,011 INFO L280 TraceCheckUtils]: 56: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,012 INFO L280 TraceCheckUtils]: 57: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short17; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,013 INFO L280 TraceCheckUtils]: 58: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume !#t~short17; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,013 INFO L280 TraceCheckUtils]: 59: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~mem16; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,014 INFO L280 TraceCheckUtils]: 60: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} havoc #t~short17; {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} is VALID [2020-07-11 02:28:59,015 INFO L280 TraceCheckUtils]: 61: Hoare triple {16607#(<= (+ parse_expression_list_~j~0 1) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {16597#false} is VALID [2020-07-11 02:28:59,015 INFO L263 TraceCheckUtils]: 62: Hoare triple {16597#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)); {16596#true} is VALID [2020-07-11 02:28:59,015 INFO L280 TraceCheckUtils]: 63: Hoare triple {16596#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {16596#true} is VALID [2020-07-11 02:28:59,015 INFO L280 TraceCheckUtils]: 64: Hoare triple {16596#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {16596#true} is VALID [2020-07-11 02:28:59,015 INFO L280 TraceCheckUtils]: 65: Hoare triple {16596#true} ~n := #in~n; {16596#true} is VALID [2020-07-11 02:28:59,016 INFO L280 TraceCheckUtils]: 66: Hoare triple {16596#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {16596#true} is VALID [2020-07-11 02:28:59,016 INFO L280 TraceCheckUtils]: 67: Hoare triple {16596#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {16596#true} is VALID [2020-07-11 02:28:59,016 INFO L280 TraceCheckUtils]: 68: Hoare triple {16596#true} havoc #t~ret0.base, #t~ret0.offset; {16596#true} is VALID [2020-07-11 02:28:59,016 INFO L280 TraceCheckUtils]: 69: Hoare triple {16596#true} assume true; {16596#true} is VALID [2020-07-11 02:28:59,016 INFO L275 TraceCheckUtils]: 70: Hoare quadruple {16596#true} {16597#false} #201#return; {16597#false} is VALID [2020-07-11 02:28:59,017 INFO L280 TraceCheckUtils]: 71: Hoare triple {16597#false} havoc #t~ret19.base, #t~ret19.offset; {16597#false} is VALID [2020-07-11 02:28:59,017 INFO L263 TraceCheckUtils]: 72: Hoare triple {16597#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {16597#false} is VALID [2020-07-11 02:28:59,017 INFO L280 TraceCheckUtils]: 73: Hoare triple {16597#false} ~cond := #in~cond; {16597#false} is VALID [2020-07-11 02:28:59,017 INFO L280 TraceCheckUtils]: 74: Hoare triple {16597#false} assume 0 == ~cond; {16597#false} is VALID [2020-07-11 02:28:59,017 INFO L280 TraceCheckUtils]: 75: Hoare triple {16597#false} assume !false; {16597#false} is VALID [2020-07-11 02:28:59,023 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2020-07-11 02:28:59,023 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1747829434] [2020-07-11 02:28:59,024 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:28:59,024 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-11 02:28:59,024 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1902758640] [2020-07-11 02:28:59,025 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 76 [2020-07-11 02:28:59,025 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:28:59,025 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-11 02:28:59,096 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:28:59,096 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-11 02:28:59,097 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:28:59,097 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-11 02:28:59,097 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2020-07-11 02:28:59,097 INFO L87 Difference]: Start difference. First operand 258 states and 289 transitions. Second operand 8 states. [2020-07-11 02:29:01,005 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:01,005 INFO L93 Difference]: Finished difference Result 432 states and 485 transitions. [2020-07-11 02:29:01,005 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2020-07-11 02:29:01,005 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 76 [2020-07-11 02:29:01,006 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:29:01,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-11 02:29:01,009 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 353 transitions. [2020-07-11 02:29:01,009 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-11 02:29:01,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 353 transitions. [2020-07-11 02:29:01,013 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 353 transitions. [2020-07-11 02:29:01,368 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 353 edges. 353 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:01,379 INFO L225 Difference]: With dead ends: 432 [2020-07-11 02:29:01,379 INFO L226 Difference]: Without dead ends: 339 [2020-07-11 02:29:01,380 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-11 02:29:01,381 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 339 states. [2020-07-11 02:29:01,796 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 339 to 258. [2020-07-11 02:29:01,796 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:29:01,796 INFO L82 GeneralOperation]: Start isEquivalent. First operand 339 states. Second operand 258 states. [2020-07-11 02:29:01,796 INFO L74 IsIncluded]: Start isIncluded. First operand 339 states. Second operand 258 states. [2020-07-11 02:29:01,797 INFO L87 Difference]: Start difference. First operand 339 states. Second operand 258 states. [2020-07-11 02:29:01,807 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:01,807 INFO L93 Difference]: Finished difference Result 339 states and 381 transitions. [2020-07-11 02:29:01,808 INFO L276 IsEmpty]: Start isEmpty. Operand 339 states and 381 transitions. [2020-07-11 02:29:01,809 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:01,809 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:01,809 INFO L74 IsIncluded]: Start isIncluded. First operand 258 states. Second operand 339 states. [2020-07-11 02:29:01,809 INFO L87 Difference]: Start difference. First operand 258 states. Second operand 339 states. [2020-07-11 02:29:01,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:01,820 INFO L93 Difference]: Finished difference Result 339 states and 381 transitions. [2020-07-11 02:29:01,820 INFO L276 IsEmpty]: Start isEmpty. Operand 339 states and 381 transitions. [2020-07-11 02:29:01,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:01,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:01,821 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:29:01,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:29:01,821 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 258 states. [2020-07-11 02:29:01,828 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 258 states to 258 states and 289 transitions. [2020-07-11 02:29:01,828 INFO L78 Accepts]: Start accepts. Automaton has 258 states and 289 transitions. Word has length 76 [2020-07-11 02:29:01,828 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:29:01,828 INFO L479 AbstractCegarLoop]: Abstraction has 258 states and 289 transitions. [2020-07-11 02:29:01,828 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-11 02:29:01,829 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 258 states and 289 transitions. [2020-07-11 02:29:02,211 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 289 edges. 289 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:02,212 INFO L276 IsEmpty]: Start isEmpty. Operand 258 states and 289 transitions. [2020-07-11 02:29:02,213 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 77 [2020-07-11 02:29:02,213 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:29:02,213 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-11 02:29:02,214 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11 [2020-07-11 02:29:02,214 INFO L427 AbstractCegarLoop]: === Iteration 13 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:29:02,214 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:29:02,214 INFO L82 PathProgramCache]: Analyzing trace with hash 116425250, now seen corresponding path program 1 times [2020-07-11 02:29:02,214 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:29:02,215 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [841810471] [2020-07-11 02:29:02,215 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:29:02,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:02,266 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:02,268 INFO L280 TraceCheckUtils]: 0: Hoare triple {18710#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {18693#true} is VALID [2020-07-11 02:29:02,269 INFO L280 TraceCheckUtils]: 1: Hoare triple {18693#true} #valid := #valid[0 := 0]; {18693#true} is VALID [2020-07-11 02:29:02,269 INFO L280 TraceCheckUtils]: 2: Hoare triple {18693#true} assume 0 < #StackHeapBarrier; {18693#true} is VALID [2020-07-11 02:29:02,269 INFO L280 TraceCheckUtils]: 3: Hoare triple {18693#true} assume true; {18693#true} is VALID [2020-07-11 02:29:02,269 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {18693#true} {18693#true} #205#return; {18693#true} is VALID [2020-07-11 02:29:02,270 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:02,272 INFO L280 TraceCheckUtils]: 0: Hoare triple {18693#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {18693#true} is VALID [2020-07-11 02:29:02,273 INFO L280 TraceCheckUtils]: 1: Hoare triple {18693#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {18693#true} is VALID [2020-07-11 02:29:02,273 INFO L280 TraceCheckUtils]: 2: Hoare triple {18693#true} ~n := #in~n; {18693#true} is VALID [2020-07-11 02:29:02,273 INFO L280 TraceCheckUtils]: 3: Hoare triple {18693#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {18693#true} is VALID [2020-07-11 02:29:02,273 INFO L280 TraceCheckUtils]: 4: Hoare triple {18693#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {18693#true} is VALID [2020-07-11 02:29:02,273 INFO L280 TraceCheckUtils]: 5: Hoare triple {18693#true} havoc #t~ret0.base, #t~ret0.offset; {18693#true} is VALID [2020-07-11 02:29:02,274 INFO L280 TraceCheckUtils]: 6: Hoare triple {18693#true} assume true; {18693#true} is VALID [2020-07-11 02:29:02,274 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {18693#true} {18694#false} #201#return; {18694#false} is VALID [2020-07-11 02:29:02,275 INFO L263 TraceCheckUtils]: 0: Hoare triple {18693#true} call ULTIMATE.init(); {18710#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:29:02,275 INFO L280 TraceCheckUtils]: 1: Hoare triple {18710#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {18693#true} is VALID [2020-07-11 02:29:02,275 INFO L280 TraceCheckUtils]: 2: Hoare triple {18693#true} #valid := #valid[0 := 0]; {18693#true} is VALID [2020-07-11 02:29:02,276 INFO L280 TraceCheckUtils]: 3: Hoare triple {18693#true} assume 0 < #StackHeapBarrier; {18693#true} is VALID [2020-07-11 02:29:02,276 INFO L280 TraceCheckUtils]: 4: Hoare triple {18693#true} assume true; {18693#true} is VALID [2020-07-11 02:29:02,276 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {18693#true} {18693#true} #205#return; {18693#true} is VALID [2020-07-11 02:29:02,276 INFO L263 TraceCheckUtils]: 6: Hoare triple {18693#true} call #t~ret21 := main(); {18693#true} is VALID [2020-07-11 02:29:02,277 INFO L280 TraceCheckUtils]: 7: Hoare triple {18693#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {18693#true} is VALID [2020-07-11 02:29:02,277 INFO L280 TraceCheckUtils]: 8: Hoare triple {18693#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {18693#true} is VALID [2020-07-11 02:29:02,277 INFO L263 TraceCheckUtils]: 9: Hoare triple {18693#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {18693#true} is VALID [2020-07-11 02:29:02,277 INFO L280 TraceCheckUtils]: 10: Hoare triple {18693#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {18693#true} is VALID [2020-07-11 02:29:02,277 INFO L280 TraceCheckUtils]: 11: Hoare triple {18693#true} ~start~0 := 0; {18693#true} is VALID [2020-07-11 02:29:02,278 INFO L280 TraceCheckUtils]: 12: Hoare triple {18693#true} ~i~0 := -1; {18693#true} is VALID [2020-07-11 02:29:02,278 INFO L280 TraceCheckUtils]: 13: Hoare triple {18693#true} ~j~0 := -1; {18693#true} is VALID [2020-07-11 02:29:02,278 INFO L280 TraceCheckUtils]: 14: Hoare triple {18693#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {18693#true} is VALID [2020-07-11 02:29:02,278 INFO L280 TraceCheckUtils]: 15: Hoare triple {18693#true} assume !(~str.base == 0 && ~str.offset == 0); {18693#true} is VALID [2020-07-11 02:29:02,278 INFO L280 TraceCheckUtils]: 16: Hoare triple {18693#true} #t~post2 := ~i~0; {18693#true} is VALID [2020-07-11 02:29:02,279 INFO L280 TraceCheckUtils]: 17: Hoare triple {18693#true} ~i~0 := 1 + #t~post2; {18693#true} is VALID [2020-07-11 02:29:02,279 INFO L280 TraceCheckUtils]: 18: Hoare triple {18693#true} havoc #t~post2; {18693#true} is VALID [2020-07-11 02:29:02,279 INFO L280 TraceCheckUtils]: 19: Hoare triple {18693#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {18693#true} is VALID [2020-07-11 02:29:02,279 INFO L280 TraceCheckUtils]: 20: Hoare triple {18693#true} #t~switch4 := 0 == #t~mem3; {18693#true} is VALID [2020-07-11 02:29:02,279 INFO L280 TraceCheckUtils]: 21: Hoare triple {18693#true} assume #t~switch4; {18693#true} is VALID [2020-07-11 02:29:02,280 INFO L280 TraceCheckUtils]: 22: Hoare triple {18693#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {18693#true} is VALID [2020-07-11 02:29:02,280 INFO L280 TraceCheckUtils]: 23: Hoare triple {18693#true} #t~short7 := 32 == #t~mem5; {18693#true} is VALID [2020-07-11 02:29:02,280 INFO L280 TraceCheckUtils]: 24: Hoare triple {18693#true} assume #t~short7; {18693#true} is VALID [2020-07-11 02:29:02,280 INFO L280 TraceCheckUtils]: 25: Hoare triple {18693#true} assume !!#t~short7; {18693#true} is VALID [2020-07-11 02:29:02,281 INFO L280 TraceCheckUtils]: 26: Hoare triple {18693#true} havoc #t~mem5; {18693#true} is VALID [2020-07-11 02:29:02,281 INFO L280 TraceCheckUtils]: 27: Hoare triple {18693#true} havoc #t~short7; {18693#true} is VALID [2020-07-11 02:29:02,281 INFO L280 TraceCheckUtils]: 28: Hoare triple {18693#true} havoc #t~mem6; {18693#true} is VALID [2020-07-11 02:29:02,281 INFO L280 TraceCheckUtils]: 29: Hoare triple {18693#true} #t~post8 := ~start~0; {18693#true} is VALID [2020-07-11 02:29:02,281 INFO L280 TraceCheckUtils]: 30: Hoare triple {18693#true} ~start~0 := 1 + #t~post8; {18693#true} is VALID [2020-07-11 02:29:02,282 INFO L280 TraceCheckUtils]: 31: Hoare triple {18693#true} havoc #t~post8; {18693#true} is VALID [2020-07-11 02:29:02,282 INFO L280 TraceCheckUtils]: 32: Hoare triple {18693#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {18693#true} is VALID [2020-07-11 02:29:02,282 INFO L280 TraceCheckUtils]: 33: Hoare triple {18693#true} #t~short7 := 32 == #t~mem5; {18693#true} is VALID [2020-07-11 02:29:02,282 INFO L280 TraceCheckUtils]: 34: Hoare triple {18693#true} assume !#t~short7; {18693#true} is VALID [2020-07-11 02:29:02,282 INFO L280 TraceCheckUtils]: 35: Hoare triple {18693#true} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {18693#true} is VALID [2020-07-11 02:29:02,283 INFO L280 TraceCheckUtils]: 36: Hoare triple {18693#true} #t~short7 := 9 == #t~mem6; {18693#true} is VALID [2020-07-11 02:29:02,283 INFO L280 TraceCheckUtils]: 37: Hoare triple {18693#true} assume !#t~short7; {18693#true} is VALID [2020-07-11 02:29:02,283 INFO L280 TraceCheckUtils]: 38: Hoare triple {18693#true} havoc #t~mem5; {18693#true} is VALID [2020-07-11 02:29:02,283 INFO L280 TraceCheckUtils]: 39: Hoare triple {18693#true} havoc #t~short7; {18693#true} is VALID [2020-07-11 02:29:02,283 INFO L280 TraceCheckUtils]: 40: Hoare triple {18693#true} havoc #t~mem6; {18693#true} is VALID [2020-07-11 02:29:02,284 INFO L280 TraceCheckUtils]: 41: Hoare triple {18693#true} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {18693#true} is VALID [2020-07-11 02:29:02,284 INFO L280 TraceCheckUtils]: 42: Hoare triple {18693#true} assume !(34 == #t~mem9); {18693#true} is VALID [2020-07-11 02:29:02,284 INFO L280 TraceCheckUtils]: 43: Hoare triple {18693#true} havoc #t~mem9; {18693#true} is VALID [2020-07-11 02:29:02,284 INFO L280 TraceCheckUtils]: 44: Hoare triple {18693#true} ~j~0 := ~i~0 - 1; {18693#true} is VALID [2020-07-11 02:29:02,284 INFO L280 TraceCheckUtils]: 45: Hoare triple {18693#true} #t~short14 := 0 < ~j~0; {18693#true} is VALID [2020-07-11 02:29:02,285 INFO L280 TraceCheckUtils]: 46: Hoare triple {18693#true} assume #t~short14; {18693#true} is VALID [2020-07-11 02:29:02,285 INFO L280 TraceCheckUtils]: 47: Hoare triple {18693#true} SUMMARY for call #t~mem11 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L58-2 {18693#true} is VALID [2020-07-11 02:29:02,285 INFO L280 TraceCheckUtils]: 48: Hoare triple {18693#true} #t~short13 := 32 == #t~mem11; {18693#true} is VALID [2020-07-11 02:29:02,287 INFO L280 TraceCheckUtils]: 49: Hoare triple {18693#true} assume #t~short13; {18700#|parse_expression_list_#t~short13|} is VALID [2020-07-11 02:29:02,287 INFO L280 TraceCheckUtils]: 50: Hoare triple {18700#|parse_expression_list_#t~short13|} #t~short14 := #t~short13; {18701#|parse_expression_list_#t~short14|} is VALID [2020-07-11 02:29:02,288 INFO L280 TraceCheckUtils]: 51: Hoare triple {18701#|parse_expression_list_#t~short14|} assume !#t~short14; {18694#false} is VALID [2020-07-11 02:29:02,288 INFO L280 TraceCheckUtils]: 52: Hoare triple {18694#false} havoc #t~mem12; {18694#false} is VALID [2020-07-11 02:29:02,288 INFO L280 TraceCheckUtils]: 53: Hoare triple {18694#false} havoc #t~mem11; {18694#false} is VALID [2020-07-11 02:29:02,289 INFO L280 TraceCheckUtils]: 54: Hoare triple {18694#false} havoc #t~short13; {18694#false} is VALID [2020-07-11 02:29:02,289 INFO L280 TraceCheckUtils]: 55: Hoare triple {18694#false} havoc #t~short14; {18694#false} is VALID [2020-07-11 02:29:02,289 INFO L280 TraceCheckUtils]: 56: Hoare triple {18694#false} #t~short17 := 0 < ~j~0; {18694#false} is VALID [2020-07-11 02:29:02,289 INFO L280 TraceCheckUtils]: 57: Hoare triple {18694#false} assume !#t~short17; {18694#false} is VALID [2020-07-11 02:29:02,289 INFO L280 TraceCheckUtils]: 58: Hoare triple {18694#false} assume !#t~short17; {18694#false} is VALID [2020-07-11 02:29:02,290 INFO L280 TraceCheckUtils]: 59: Hoare triple {18694#false} havoc #t~mem16; {18694#false} is VALID [2020-07-11 02:29:02,290 INFO L280 TraceCheckUtils]: 60: Hoare triple {18694#false} havoc #t~short17; {18694#false} is VALID [2020-07-11 02:29:02,290 INFO L280 TraceCheckUtils]: 61: Hoare triple {18694#false} assume ~start~0 <= ~j~0; {18694#false} is VALID [2020-07-11 02:29:02,290 INFO L263 TraceCheckUtils]: 62: Hoare triple {18694#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)); {18693#true} is VALID [2020-07-11 02:29:02,290 INFO L280 TraceCheckUtils]: 63: Hoare triple {18693#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {18693#true} is VALID [2020-07-11 02:29:02,291 INFO L280 TraceCheckUtils]: 64: Hoare triple {18693#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {18693#true} is VALID [2020-07-11 02:29:02,291 INFO L280 TraceCheckUtils]: 65: Hoare triple {18693#true} ~n := #in~n; {18693#true} is VALID [2020-07-11 02:29:02,291 INFO L280 TraceCheckUtils]: 66: Hoare triple {18693#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {18693#true} is VALID [2020-07-11 02:29:02,291 INFO L280 TraceCheckUtils]: 67: Hoare triple {18693#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {18693#true} is VALID [2020-07-11 02:29:02,291 INFO L280 TraceCheckUtils]: 68: Hoare triple {18693#true} havoc #t~ret0.base, #t~ret0.offset; {18693#true} is VALID [2020-07-11 02:29:02,292 INFO L280 TraceCheckUtils]: 69: Hoare triple {18693#true} assume true; {18693#true} is VALID [2020-07-11 02:29:02,292 INFO L275 TraceCheckUtils]: 70: Hoare quadruple {18693#true} {18694#false} #201#return; {18694#false} is VALID [2020-07-11 02:29:02,292 INFO L280 TraceCheckUtils]: 71: Hoare triple {18694#false} havoc #t~ret19.base, #t~ret19.offset; {18694#false} is VALID [2020-07-11 02:29:02,292 INFO L263 TraceCheckUtils]: 72: Hoare triple {18694#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {18694#false} is VALID [2020-07-11 02:29:02,292 INFO L280 TraceCheckUtils]: 73: Hoare triple {18694#false} ~cond := #in~cond; {18694#false} is VALID [2020-07-11 02:29:02,292 INFO L280 TraceCheckUtils]: 74: Hoare triple {18694#false} assume 0 == ~cond; {18694#false} is VALID [2020-07-11 02:29:02,293 INFO L280 TraceCheckUtils]: 75: Hoare triple {18694#false} assume !false; {18694#false} is VALID [2020-07-11 02:29:02,298 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2020-07-11 02:29:02,298 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [841810471] [2020-07-11 02:29:02,298 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:29:02,299 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2020-07-11 02:29:02,299 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [853496306] [2020-07-11 02:29:02,301 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 76 [2020-07-11 02:29:02,302 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:29:02,302 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2020-07-11 02:29:02,385 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:02,386 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2020-07-11 02:29:02,386 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:29:02,386 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2020-07-11 02:29:02,386 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2020-07-11 02:29:02,387 INFO L87 Difference]: Start difference. First operand 258 states and 289 transitions. Second operand 5 states. [2020-07-11 02:29:03,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:03,291 INFO L93 Difference]: Finished difference Result 366 states and 409 transitions. [2020-07-11 02:29:03,291 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2020-07-11 02:29:03,291 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 76 [2020-07-11 02:29:03,291 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:29:03,291 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-11 02:29:03,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 212 transitions. [2020-07-11 02:29:03,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2020-07-11 02:29:03,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 212 transitions. [2020-07-11 02:29:03,295 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 212 transitions. [2020-07-11 02:29:03,478 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 212 edges. 212 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:03,485 INFO L225 Difference]: With dead ends: 366 [2020-07-11 02:29:03,485 INFO L226 Difference]: Without dead ends: 277 [2020-07-11 02:29:03,487 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 9 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2020-07-11 02:29:03,488 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 277 states. [2020-07-11 02:29:03,900 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 277 to 260. [2020-07-11 02:29:03,900 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:29:03,900 INFO L82 GeneralOperation]: Start isEquivalent. First operand 277 states. Second operand 260 states. [2020-07-11 02:29:03,900 INFO L74 IsIncluded]: Start isIncluded. First operand 277 states. Second operand 260 states. [2020-07-11 02:29:03,900 INFO L87 Difference]: Start difference. First operand 277 states. Second operand 260 states. [2020-07-11 02:29:03,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:03,907 INFO L93 Difference]: Finished difference Result 277 states and 308 transitions. [2020-07-11 02:29:03,907 INFO L276 IsEmpty]: Start isEmpty. Operand 277 states and 308 transitions. [2020-07-11 02:29:03,909 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:03,910 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:03,910 INFO L74 IsIncluded]: Start isIncluded. First operand 260 states. Second operand 277 states. [2020-07-11 02:29:03,910 INFO L87 Difference]: Start difference. First operand 260 states. Second operand 277 states. [2020-07-11 02:29:03,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:03,917 INFO L93 Difference]: Finished difference Result 277 states and 308 transitions. [2020-07-11 02:29:03,917 INFO L276 IsEmpty]: Start isEmpty. Operand 277 states and 308 transitions. [2020-07-11 02:29:03,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:03,918 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:03,918 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:29:03,918 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:29:03,919 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 260 states. [2020-07-11 02:29:03,926 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 260 states to 260 states and 291 transitions. [2020-07-11 02:29:03,927 INFO L78 Accepts]: Start accepts. Automaton has 260 states and 291 transitions. Word has length 76 [2020-07-11 02:29:03,927 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:29:03,927 INFO L479 AbstractCegarLoop]: Abstraction has 260 states and 291 transitions. [2020-07-11 02:29:03,928 INFO L480 AbstractCegarLoop]: Interpolant automaton has 5 states. [2020-07-11 02:29:03,928 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 260 states and 291 transitions. [2020-07-11 02:29:04,300 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 291 edges. 291 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:04,301 INFO L276 IsEmpty]: Start isEmpty. Operand 260 states and 291 transitions. [2020-07-11 02:29:04,302 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 78 [2020-07-11 02:29:04,302 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:29:04,302 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-11 02:29:04,303 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12 [2020-07-11 02:29:04,303 INFO L427 AbstractCegarLoop]: === Iteration 14 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:29:04,303 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:29:04,303 INFO L82 PathProgramCache]: Analyzing trace with hash -1122457453, now seen corresponding path program 1 times [2020-07-11 02:29:04,303 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:29:04,304 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1300165353] [2020-07-11 02:29:04,304 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:29:04,323 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:04,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:04,373 INFO L280 TraceCheckUtils]: 0: Hoare triple {20539#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {20521#true} is VALID [2020-07-11 02:29:04,374 INFO L280 TraceCheckUtils]: 1: Hoare triple {20521#true} #valid := #valid[0 := 0]; {20521#true} is VALID [2020-07-11 02:29:04,374 INFO L280 TraceCheckUtils]: 2: Hoare triple {20521#true} assume 0 < #StackHeapBarrier; {20521#true} is VALID [2020-07-11 02:29:04,374 INFO L280 TraceCheckUtils]: 3: Hoare triple {20521#true} assume true; {20521#true} is VALID [2020-07-11 02:29:04,374 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {20521#true} {20521#true} #205#return; {20521#true} is VALID [2020-07-11 02:29:04,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:04,378 INFO L280 TraceCheckUtils]: 0: Hoare triple {20521#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {20521#true} is VALID [2020-07-11 02:29:04,378 INFO L280 TraceCheckUtils]: 1: Hoare triple {20521#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {20521#true} is VALID [2020-07-11 02:29:04,378 INFO L280 TraceCheckUtils]: 2: Hoare triple {20521#true} ~n := #in~n; {20521#true} is VALID [2020-07-11 02:29:04,379 INFO L280 TraceCheckUtils]: 3: Hoare triple {20521#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {20521#true} is VALID [2020-07-11 02:29:04,379 INFO L280 TraceCheckUtils]: 4: Hoare triple {20521#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {20521#true} is VALID [2020-07-11 02:29:04,379 INFO L280 TraceCheckUtils]: 5: Hoare triple {20521#true} havoc #t~ret0.base, #t~ret0.offset; {20521#true} is VALID [2020-07-11 02:29:04,379 INFO L280 TraceCheckUtils]: 6: Hoare triple {20521#true} assume true; {20521#true} is VALID [2020-07-11 02:29:04,379 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {20521#true} {20522#false} #201#return; {20522#false} is VALID [2020-07-11 02:29:04,380 INFO L263 TraceCheckUtils]: 0: Hoare triple {20521#true} call ULTIMATE.init(); {20539#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:29:04,380 INFO L280 TraceCheckUtils]: 1: Hoare triple {20539#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {20521#true} is VALID [2020-07-11 02:29:04,381 INFO L280 TraceCheckUtils]: 2: Hoare triple {20521#true} #valid := #valid[0 := 0]; {20521#true} is VALID [2020-07-11 02:29:04,381 INFO L280 TraceCheckUtils]: 3: Hoare triple {20521#true} assume 0 < #StackHeapBarrier; {20521#true} is VALID [2020-07-11 02:29:04,381 INFO L280 TraceCheckUtils]: 4: Hoare triple {20521#true} assume true; {20521#true} is VALID [2020-07-11 02:29:04,381 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {20521#true} {20521#true} #205#return; {20521#true} is VALID [2020-07-11 02:29:04,381 INFO L263 TraceCheckUtils]: 6: Hoare triple {20521#true} call #t~ret21 := main(); {20521#true} is VALID [2020-07-11 02:29:04,381 INFO L280 TraceCheckUtils]: 7: Hoare triple {20521#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {20521#true} is VALID [2020-07-11 02:29:04,382 INFO L280 TraceCheckUtils]: 8: Hoare triple {20521#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {20521#true} is VALID [2020-07-11 02:29:04,382 INFO L263 TraceCheckUtils]: 9: Hoare triple {20521#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {20521#true} is VALID [2020-07-11 02:29:04,382 INFO L280 TraceCheckUtils]: 10: Hoare triple {20521#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {20521#true} is VALID [2020-07-11 02:29:04,382 INFO L280 TraceCheckUtils]: 11: Hoare triple {20521#true} ~start~0 := 0; {20521#true} is VALID [2020-07-11 02:29:04,382 INFO L280 TraceCheckUtils]: 12: Hoare triple {20521#true} ~i~0 := -1; {20521#true} is VALID [2020-07-11 02:29:04,383 INFO L280 TraceCheckUtils]: 13: Hoare triple {20521#true} ~j~0 := -1; {20521#true} is VALID [2020-07-11 02:29:04,383 INFO L280 TraceCheckUtils]: 14: Hoare triple {20521#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {20521#true} is VALID [2020-07-11 02:29:04,383 INFO L280 TraceCheckUtils]: 15: Hoare triple {20521#true} assume !(~str.base == 0 && ~str.offset == 0); {20521#true} is VALID [2020-07-11 02:29:04,383 INFO L280 TraceCheckUtils]: 16: Hoare triple {20521#true} #t~post2 := ~i~0; {20521#true} is VALID [2020-07-11 02:29:04,383 INFO L280 TraceCheckUtils]: 17: Hoare triple {20521#true} ~i~0 := 1 + #t~post2; {20521#true} is VALID [2020-07-11 02:29:04,383 INFO L280 TraceCheckUtils]: 18: Hoare triple {20521#true} havoc #t~post2; {20521#true} is VALID [2020-07-11 02:29:04,384 INFO L280 TraceCheckUtils]: 19: Hoare triple {20521#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {20521#true} is VALID [2020-07-11 02:29:04,384 INFO L280 TraceCheckUtils]: 20: Hoare triple {20521#true} #t~switch4 := 0 == #t~mem3; {20521#true} is VALID [2020-07-11 02:29:04,384 INFO L280 TraceCheckUtils]: 21: Hoare triple {20521#true} assume #t~switch4; {20521#true} is VALID [2020-07-11 02:29:04,384 INFO L280 TraceCheckUtils]: 22: Hoare triple {20521#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {20521#true} is VALID [2020-07-11 02:29:04,384 INFO L280 TraceCheckUtils]: 23: Hoare triple {20521#true} #t~short7 := 32 == #t~mem5; {20521#true} is VALID [2020-07-11 02:29:04,384 INFO L280 TraceCheckUtils]: 24: Hoare triple {20521#true} assume #t~short7; {20521#true} is VALID [2020-07-11 02:29:04,385 INFO L280 TraceCheckUtils]: 25: Hoare triple {20521#true} assume !!#t~short7; {20521#true} is VALID [2020-07-11 02:29:04,385 INFO L280 TraceCheckUtils]: 26: Hoare triple {20521#true} havoc #t~mem5; {20521#true} is VALID [2020-07-11 02:29:04,385 INFO L280 TraceCheckUtils]: 27: Hoare triple {20521#true} havoc #t~short7; {20521#true} is VALID [2020-07-11 02:29:04,385 INFO L280 TraceCheckUtils]: 28: Hoare triple {20521#true} havoc #t~mem6; {20521#true} is VALID [2020-07-11 02:29:04,385 INFO L280 TraceCheckUtils]: 29: Hoare triple {20521#true} #t~post8 := ~start~0; {20521#true} is VALID [2020-07-11 02:29:04,385 INFO L280 TraceCheckUtils]: 30: Hoare triple {20521#true} ~start~0 := 1 + #t~post8; {20521#true} is VALID [2020-07-11 02:29:04,386 INFO L280 TraceCheckUtils]: 31: Hoare triple {20521#true} havoc #t~post8; {20521#true} is VALID [2020-07-11 02:29:04,386 INFO L280 TraceCheckUtils]: 32: Hoare triple {20521#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {20521#true} is VALID [2020-07-11 02:29:04,386 INFO L280 TraceCheckUtils]: 33: Hoare triple {20521#true} #t~short7 := 32 == #t~mem5; {20521#true} is VALID [2020-07-11 02:29:04,386 INFO L280 TraceCheckUtils]: 34: Hoare triple {20521#true} assume !#t~short7; {20521#true} is VALID [2020-07-11 02:29:04,386 INFO L280 TraceCheckUtils]: 35: Hoare triple {20521#true} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {20521#true} is VALID [2020-07-11 02:29:04,386 INFO L280 TraceCheckUtils]: 36: Hoare triple {20521#true} #t~short7 := 9 == #t~mem6; {20521#true} is VALID [2020-07-11 02:29:04,387 INFO L280 TraceCheckUtils]: 37: Hoare triple {20521#true} assume !#t~short7; {20521#true} is VALID [2020-07-11 02:29:04,387 INFO L280 TraceCheckUtils]: 38: Hoare triple {20521#true} havoc #t~mem5; {20521#true} is VALID [2020-07-11 02:29:04,387 INFO L280 TraceCheckUtils]: 39: Hoare triple {20521#true} havoc #t~short7; {20521#true} is VALID [2020-07-11 02:29:04,387 INFO L280 TraceCheckUtils]: 40: Hoare triple {20521#true} havoc #t~mem6; {20521#true} is VALID [2020-07-11 02:29:04,387 INFO L280 TraceCheckUtils]: 41: Hoare triple {20521#true} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {20521#true} is VALID [2020-07-11 02:29:04,387 INFO L280 TraceCheckUtils]: 42: Hoare triple {20521#true} assume !(34 == #t~mem9); {20521#true} is VALID [2020-07-11 02:29:04,388 INFO L280 TraceCheckUtils]: 43: Hoare triple {20521#true} havoc #t~mem9; {20521#true} is VALID [2020-07-11 02:29:04,388 INFO L280 TraceCheckUtils]: 44: Hoare triple {20521#true} ~j~0 := ~i~0 - 1; {20521#true} is VALID [2020-07-11 02:29:04,389 INFO L280 TraceCheckUtils]: 45: Hoare triple {20521#true} #t~short14 := 0 < ~j~0; {20528#(or (<= parse_expression_list_~j~0 0) |parse_expression_list_#t~short14|)} is VALID [2020-07-11 02:29:04,389 INFO L280 TraceCheckUtils]: 46: Hoare triple {20528#(or (<= parse_expression_list_~j~0 0) |parse_expression_list_#t~short14|)} assume !#t~short14; {20529#(<= parse_expression_list_~j~0 0)} is VALID [2020-07-11 02:29:04,390 INFO L280 TraceCheckUtils]: 47: Hoare triple {20529#(<= parse_expression_list_~j~0 0)} assume !#t~short14; {20529#(<= parse_expression_list_~j~0 0)} is VALID [2020-07-11 02:29:04,390 INFO L280 TraceCheckUtils]: 48: Hoare triple {20529#(<= parse_expression_list_~j~0 0)} havoc #t~mem12; {20529#(<= parse_expression_list_~j~0 0)} is VALID [2020-07-11 02:29:04,391 INFO L280 TraceCheckUtils]: 49: Hoare triple {20529#(<= parse_expression_list_~j~0 0)} havoc #t~mem11; {20529#(<= parse_expression_list_~j~0 0)} is VALID [2020-07-11 02:29:04,391 INFO L280 TraceCheckUtils]: 50: Hoare triple {20529#(<= parse_expression_list_~j~0 0)} havoc #t~short13; {20529#(<= parse_expression_list_~j~0 0)} is VALID [2020-07-11 02:29:04,392 INFO L280 TraceCheckUtils]: 51: Hoare triple {20529#(<= parse_expression_list_~j~0 0)} havoc #t~short14; {20529#(<= parse_expression_list_~j~0 0)} is VALID [2020-07-11 02:29:04,392 INFO L280 TraceCheckUtils]: 52: Hoare triple {20529#(<= parse_expression_list_~j~0 0)} #t~short17 := 0 < ~j~0; {20530#(not |parse_expression_list_#t~short17|)} is VALID [2020-07-11 02:29:04,393 INFO L280 TraceCheckUtils]: 53: Hoare triple {20530#(not |parse_expression_list_#t~short17|)} assume #t~short17; {20522#false} is VALID [2020-07-11 02:29:04,393 INFO L280 TraceCheckUtils]: 54: Hoare triple {20522#false} SUMMARY for call #t~mem16 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L59-1 {20522#false} is VALID [2020-07-11 02:29:04,393 INFO L280 TraceCheckUtils]: 55: Hoare triple {20522#false} #t~short17 := 34 == #t~mem16; {20522#false} is VALID [2020-07-11 02:29:04,393 INFO L280 TraceCheckUtils]: 56: Hoare triple {20522#false} assume #t~short17; {20522#false} is VALID [2020-07-11 02:29:04,394 INFO L280 TraceCheckUtils]: 57: Hoare triple {20522#false} havoc #t~mem16; {20522#false} is VALID [2020-07-11 02:29:04,394 INFO L280 TraceCheckUtils]: 58: Hoare triple {20522#false} havoc #t~short17; {20522#false} is VALID [2020-07-11 02:29:04,394 INFO L280 TraceCheckUtils]: 59: Hoare triple {20522#false} #t~post18 := ~j~0; {20522#false} is VALID [2020-07-11 02:29:04,394 INFO L280 TraceCheckUtils]: 60: Hoare triple {20522#false} ~j~0 := #t~post18 - 1; {20522#false} is VALID [2020-07-11 02:29:04,394 INFO L280 TraceCheckUtils]: 61: Hoare triple {20522#false} havoc #t~post18; {20522#false} is VALID [2020-07-11 02:29:04,395 INFO L280 TraceCheckUtils]: 62: Hoare triple {20522#false} assume ~start~0 <= ~j~0; {20522#false} is VALID [2020-07-11 02:29:04,395 INFO L263 TraceCheckUtils]: 63: Hoare triple {20522#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)); {20521#true} is VALID [2020-07-11 02:29:04,395 INFO L280 TraceCheckUtils]: 64: Hoare triple {20521#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {20521#true} is VALID [2020-07-11 02:29:04,395 INFO L280 TraceCheckUtils]: 65: Hoare triple {20521#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {20521#true} is VALID [2020-07-11 02:29:04,395 INFO L280 TraceCheckUtils]: 66: Hoare triple {20521#true} ~n := #in~n; {20521#true} is VALID [2020-07-11 02:29:04,396 INFO L280 TraceCheckUtils]: 67: Hoare triple {20521#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {20521#true} is VALID [2020-07-11 02:29:04,396 INFO L280 TraceCheckUtils]: 68: Hoare triple {20521#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {20521#true} is VALID [2020-07-11 02:29:04,396 INFO L280 TraceCheckUtils]: 69: Hoare triple {20521#true} havoc #t~ret0.base, #t~ret0.offset; {20521#true} is VALID [2020-07-11 02:29:04,396 INFO L280 TraceCheckUtils]: 70: Hoare triple {20521#true} assume true; {20521#true} is VALID [2020-07-11 02:29:04,396 INFO L275 TraceCheckUtils]: 71: Hoare quadruple {20521#true} {20522#false} #201#return; {20522#false} is VALID [2020-07-11 02:29:04,396 INFO L280 TraceCheckUtils]: 72: Hoare triple {20522#false} havoc #t~ret19.base, #t~ret19.offset; {20522#false} is VALID [2020-07-11 02:29:04,397 INFO L263 TraceCheckUtils]: 73: Hoare triple {20522#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {20522#false} is VALID [2020-07-11 02:29:04,397 INFO L280 TraceCheckUtils]: 74: Hoare triple {20522#false} ~cond := #in~cond; {20522#false} is VALID [2020-07-11 02:29:04,397 INFO L280 TraceCheckUtils]: 75: Hoare triple {20522#false} assume 0 == ~cond; {20522#false} is VALID [2020-07-11 02:29:04,397 INFO L280 TraceCheckUtils]: 76: Hoare triple {20522#false} assume !false; {20522#false} is VALID [2020-07-11 02:29:04,401 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2020-07-11 02:29:04,401 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1300165353] [2020-07-11 02:29:04,402 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:29:04,402 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2020-07-11 02:29:04,402 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1700486096] [2020-07-11 02:29:04,402 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 77 [2020-07-11 02:29:04,403 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:29:04,404 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-11 02:29:04,465 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-11 02:29:04,465 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-11 02:29:04,465 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:29:04,466 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-11 02:29:04,466 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2020-07-11 02:29:04,466 INFO L87 Difference]: Start difference. First operand 260 states and 291 transitions. Second operand 6 states. [2020-07-11 02:29:05,587 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:05,588 INFO L93 Difference]: Finished difference Result 411 states and 459 transitions. [2020-07-11 02:29:05,588 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2020-07-11 02:29:05,588 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 77 [2020-07-11 02:29:05,589 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:29:05,589 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-11 02:29:05,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 264 transitions. [2020-07-11 02:29:05,593 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-11 02:29:05,596 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 264 transitions. [2020-07-11 02:29:05,596 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 264 transitions. [2020-07-11 02:29:05,847 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 264 edges. 264 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:05,857 INFO L225 Difference]: With dead ends: 411 [2020-07-11 02:29:05,857 INFO L226 Difference]: Without dead ends: 297 [2020-07-11 02:29:05,859 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2020-07-11 02:29:05,860 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 297 states. [2020-07-11 02:29:06,278 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 297 to 253. [2020-07-11 02:29:06,278 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:29:06,278 INFO L82 GeneralOperation]: Start isEquivalent. First operand 297 states. Second operand 253 states. [2020-07-11 02:29:06,278 INFO L74 IsIncluded]: Start isIncluded. First operand 297 states. Second operand 253 states. [2020-07-11 02:29:06,278 INFO L87 Difference]: Start difference. First operand 297 states. Second operand 253 states. [2020-07-11 02:29:06,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:06,290 INFO L93 Difference]: Finished difference Result 297 states and 331 transitions. [2020-07-11 02:29:06,290 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 331 transitions. [2020-07-11 02:29:06,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:06,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:06,291 INFO L74 IsIncluded]: Start isIncluded. First operand 253 states. Second operand 297 states. [2020-07-11 02:29:06,292 INFO L87 Difference]: Start difference. First operand 253 states. Second operand 297 states. [2020-07-11 02:29:06,299 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:06,299 INFO L93 Difference]: Finished difference Result 297 states and 331 transitions. [2020-07-11 02:29:06,300 INFO L276 IsEmpty]: Start isEmpty. Operand 297 states and 331 transitions. [2020-07-11 02:29:06,300 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:06,301 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:06,301 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:29:06,301 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:29:06,301 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 253 states. [2020-07-11 02:29:06,307 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 253 states to 253 states and 281 transitions. [2020-07-11 02:29:06,307 INFO L78 Accepts]: Start accepts. Automaton has 253 states and 281 transitions. Word has length 77 [2020-07-11 02:29:06,307 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:29:06,307 INFO L479 AbstractCegarLoop]: Abstraction has 253 states and 281 transitions. [2020-07-11 02:29:06,307 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-11 02:29:06,308 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 253 states and 281 transitions. [2020-07-11 02:29:06,772 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 281 edges. 281 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:06,772 INFO L276 IsEmpty]: Start isEmpty. Operand 253 states and 281 transitions. [2020-07-11 02:29:06,774 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2020-07-11 02:29:06,774 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:29:06,775 INFO L422 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-11 02:29:06,775 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable13 [2020-07-11 02:29:06,775 INFO L427 AbstractCegarLoop]: === Iteration 15 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:29:06,776 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:29:06,776 INFO L82 PathProgramCache]: Analyzing trace with hash 2031617893, now seen corresponding path program 1 times [2020-07-11 02:29:06,776 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:29:06,777 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [621182394] [2020-07-11 02:29:06,777 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:29:06,795 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:06,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:06,891 INFO L280 TraceCheckUtils]: 0: Hoare triple {22488#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {22468#true} is VALID [2020-07-11 02:29:06,891 INFO L280 TraceCheckUtils]: 1: Hoare triple {22468#true} #valid := #valid[0 := 0]; {22468#true} is VALID [2020-07-11 02:29:06,891 INFO L280 TraceCheckUtils]: 2: Hoare triple {22468#true} assume 0 < #StackHeapBarrier; {22468#true} is VALID [2020-07-11 02:29:06,891 INFO L280 TraceCheckUtils]: 3: Hoare triple {22468#true} assume true; {22468#true} is VALID [2020-07-11 02:29:06,892 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {22468#true} {22468#true} #205#return; {22468#true} is VALID [2020-07-11 02:29:06,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:06,900 INFO L280 TraceCheckUtils]: 0: Hoare triple {22468#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {22468#true} is VALID [2020-07-11 02:29:06,901 INFO L280 TraceCheckUtils]: 1: Hoare triple {22468#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {22468#true} is VALID [2020-07-11 02:29:06,901 INFO L280 TraceCheckUtils]: 2: Hoare triple {22468#true} ~n := #in~n; {22468#true} is VALID [2020-07-11 02:29:06,902 INFO L280 TraceCheckUtils]: 3: Hoare triple {22468#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {22468#true} is VALID [2020-07-11 02:29:06,902 INFO L280 TraceCheckUtils]: 4: Hoare triple {22468#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {22468#true} is VALID [2020-07-11 02:29:06,902 INFO L280 TraceCheckUtils]: 5: Hoare triple {22468#true} havoc #t~ret0.base, #t~ret0.offset; {22468#true} is VALID [2020-07-11 02:29:06,903 INFO L280 TraceCheckUtils]: 6: Hoare triple {22468#true} assume true; {22468#true} is VALID [2020-07-11 02:29:06,903 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {22468#true} {22469#false} #201#return; {22469#false} is VALID [2020-07-11 02:29:06,904 INFO L263 TraceCheckUtils]: 0: Hoare triple {22468#true} call ULTIMATE.init(); {22488#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:29:06,905 INFO L280 TraceCheckUtils]: 1: Hoare triple {22488#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {22468#true} is VALID [2020-07-11 02:29:06,905 INFO L280 TraceCheckUtils]: 2: Hoare triple {22468#true} #valid := #valid[0 := 0]; {22468#true} is VALID [2020-07-11 02:29:06,905 INFO L280 TraceCheckUtils]: 3: Hoare triple {22468#true} assume 0 < #StackHeapBarrier; {22468#true} is VALID [2020-07-11 02:29:06,906 INFO L280 TraceCheckUtils]: 4: Hoare triple {22468#true} assume true; {22468#true} is VALID [2020-07-11 02:29:06,906 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {22468#true} {22468#true} #205#return; {22468#true} is VALID [2020-07-11 02:29:06,906 INFO L263 TraceCheckUtils]: 6: Hoare triple {22468#true} call #t~ret21 := main(); {22468#true} is VALID [2020-07-11 02:29:06,906 INFO L280 TraceCheckUtils]: 7: Hoare triple {22468#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {22468#true} is VALID [2020-07-11 02:29:06,907 INFO L280 TraceCheckUtils]: 8: Hoare triple {22468#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {22468#true} is VALID [2020-07-11 02:29:06,907 INFO L263 TraceCheckUtils]: 9: Hoare triple {22468#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {22468#true} is VALID [2020-07-11 02:29:06,907 INFO L280 TraceCheckUtils]: 10: Hoare triple {22468#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {22468#true} is VALID [2020-07-11 02:29:06,908 INFO L280 TraceCheckUtils]: 11: Hoare triple {22468#true} ~start~0 := 0; {22468#true} is VALID [2020-07-11 02:29:06,909 INFO L280 TraceCheckUtils]: 12: Hoare triple {22468#true} ~i~0 := -1; {22475#(<= (+ parse_expression_list_~i~0 1) 0)} is VALID [2020-07-11 02:29:06,910 INFO L280 TraceCheckUtils]: 13: Hoare triple {22475#(<= (+ parse_expression_list_~i~0 1) 0)} ~j~0 := -1; {22475#(<= (+ parse_expression_list_~i~0 1) 0)} is VALID [2020-07-11 02:29:06,911 INFO L280 TraceCheckUtils]: 14: Hoare triple {22475#(<= (+ parse_expression_list_~i~0 1) 0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {22475#(<= (+ parse_expression_list_~i~0 1) 0)} is VALID [2020-07-11 02:29:06,911 INFO L280 TraceCheckUtils]: 15: Hoare triple {22475#(<= (+ parse_expression_list_~i~0 1) 0)} assume !(~str.base == 0 && ~str.offset == 0); {22475#(<= (+ parse_expression_list_~i~0 1) 0)} is VALID [2020-07-11 02:29:06,912 INFO L280 TraceCheckUtils]: 16: Hoare triple {22475#(<= (+ parse_expression_list_~i~0 1) 0)} #t~post2 := ~i~0; {22476#(<= (+ |parse_expression_list_#t~post2| 1) 0)} is VALID [2020-07-11 02:29:06,914 INFO L280 TraceCheckUtils]: 17: Hoare triple {22476#(<= (+ |parse_expression_list_#t~post2| 1) 0)} ~i~0 := 1 + #t~post2; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,915 INFO L280 TraceCheckUtils]: 18: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~post2; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,915 INFO L280 TraceCheckUtils]: 19: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,916 INFO L280 TraceCheckUtils]: 20: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} #t~switch4 := 0 == #t~mem3; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,917 INFO L280 TraceCheckUtils]: 21: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} assume #t~switch4; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,918 INFO L280 TraceCheckUtils]: 22: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,919 INFO L280 TraceCheckUtils]: 23: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} #t~short7 := 32 == #t~mem5; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,920 INFO L280 TraceCheckUtils]: 24: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} assume #t~short7; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,921 INFO L280 TraceCheckUtils]: 25: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} assume !!#t~short7; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,921 INFO L280 TraceCheckUtils]: 26: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~mem5; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,922 INFO L280 TraceCheckUtils]: 27: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~short7; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,923 INFO L280 TraceCheckUtils]: 28: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~mem6; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,924 INFO L280 TraceCheckUtils]: 29: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} #t~post8 := ~start~0; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,925 INFO L280 TraceCheckUtils]: 30: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} ~start~0 := 1 + #t~post8; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,926 INFO L280 TraceCheckUtils]: 31: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~post8; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,927 INFO L280 TraceCheckUtils]: 32: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,927 INFO L280 TraceCheckUtils]: 33: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} #t~short7 := 32 == #t~mem5; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,928 INFO L280 TraceCheckUtils]: 34: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} assume !#t~short7; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,929 INFO L280 TraceCheckUtils]: 35: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,930 INFO L280 TraceCheckUtils]: 36: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} #t~short7 := 9 == #t~mem6; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,931 INFO L280 TraceCheckUtils]: 37: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} assume !#t~short7; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,932 INFO L280 TraceCheckUtils]: 38: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~mem5; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,933 INFO L280 TraceCheckUtils]: 39: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~short7; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,933 INFO L280 TraceCheckUtils]: 40: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~mem6; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,934 INFO L280 TraceCheckUtils]: 41: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,935 INFO L280 TraceCheckUtils]: 42: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} assume !(34 == #t~mem9); {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,936 INFO L280 TraceCheckUtils]: 43: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} havoc #t~mem9; {22477#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:06,937 INFO L280 TraceCheckUtils]: 44: Hoare triple {22477#(<= parse_expression_list_~i~0 0)} ~j~0 := ~i~0 - 1; {22478#(<= (+ parse_expression_list_~j~0 1) 0)} is VALID [2020-07-11 02:29:06,938 INFO L280 TraceCheckUtils]: 45: Hoare triple {22478#(<= (+ parse_expression_list_~j~0 1) 0)} #t~short14 := 0 < ~j~0; {22479#(not |parse_expression_list_#t~short14|)} is VALID [2020-07-11 02:29:06,939 INFO L280 TraceCheckUtils]: 46: Hoare triple {22479#(not |parse_expression_list_#t~short14|)} assume #t~short14; {22469#false} is VALID [2020-07-11 02:29:06,939 INFO L280 TraceCheckUtils]: 47: Hoare triple {22469#false} SUMMARY for call #t~mem11 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L58-2 {22469#false} is VALID [2020-07-11 02:29:06,940 INFO L280 TraceCheckUtils]: 48: Hoare triple {22469#false} #t~short13 := 32 == #t~mem11; {22469#false} is VALID [2020-07-11 02:29:06,940 INFO L280 TraceCheckUtils]: 49: Hoare triple {22469#false} assume !#t~short13; {22469#false} is VALID [2020-07-11 02:29:06,940 INFO L280 TraceCheckUtils]: 50: Hoare triple {22469#false} SUMMARY for call #t~mem12 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L58-6 {22469#false} is VALID [2020-07-11 02:29:06,941 INFO L280 TraceCheckUtils]: 51: Hoare triple {22469#false} #t~short13 := 9 == #t~mem12; {22469#false} is VALID [2020-07-11 02:29:06,941 INFO L280 TraceCheckUtils]: 52: Hoare triple {22469#false} #t~short14 := #t~short13; {22469#false} is VALID [2020-07-11 02:29:06,941 INFO L280 TraceCheckUtils]: 53: Hoare triple {22469#false} assume !#t~short14; {22469#false} is VALID [2020-07-11 02:29:06,941 INFO L280 TraceCheckUtils]: 54: Hoare triple {22469#false} havoc #t~mem12; {22469#false} is VALID [2020-07-11 02:29:06,942 INFO L280 TraceCheckUtils]: 55: Hoare triple {22469#false} havoc #t~mem11; {22469#false} is VALID [2020-07-11 02:29:06,942 INFO L280 TraceCheckUtils]: 56: Hoare triple {22469#false} havoc #t~short13; {22469#false} is VALID [2020-07-11 02:29:06,942 INFO L280 TraceCheckUtils]: 57: Hoare triple {22469#false} havoc #t~short14; {22469#false} is VALID [2020-07-11 02:29:06,943 INFO L280 TraceCheckUtils]: 58: Hoare triple {22469#false} #t~short17 := 0 < ~j~0; {22469#false} is VALID [2020-07-11 02:29:06,943 INFO L280 TraceCheckUtils]: 59: Hoare triple {22469#false} assume !#t~short17; {22469#false} is VALID [2020-07-11 02:29:06,943 INFO L280 TraceCheckUtils]: 60: Hoare triple {22469#false} assume !#t~short17; {22469#false} is VALID [2020-07-11 02:29:06,943 INFO L280 TraceCheckUtils]: 61: Hoare triple {22469#false} havoc #t~mem16; {22469#false} is VALID [2020-07-11 02:29:06,944 INFO L280 TraceCheckUtils]: 62: Hoare triple {22469#false} havoc #t~short17; {22469#false} is VALID [2020-07-11 02:29:06,944 INFO L280 TraceCheckUtils]: 63: Hoare triple {22469#false} assume ~start~0 <= ~j~0; {22469#false} is VALID [2020-07-11 02:29:06,944 INFO L263 TraceCheckUtils]: 64: Hoare triple {22469#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)); {22468#true} is VALID [2020-07-11 02:29:06,945 INFO L280 TraceCheckUtils]: 65: Hoare triple {22468#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {22468#true} is VALID [2020-07-11 02:29:06,945 INFO L280 TraceCheckUtils]: 66: Hoare triple {22468#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {22468#true} is VALID [2020-07-11 02:29:06,945 INFO L280 TraceCheckUtils]: 67: Hoare triple {22468#true} ~n := #in~n; {22468#true} is VALID [2020-07-11 02:29:06,945 INFO L280 TraceCheckUtils]: 68: Hoare triple {22468#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {22468#true} is VALID [2020-07-11 02:29:06,946 INFO L280 TraceCheckUtils]: 69: Hoare triple {22468#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {22468#true} is VALID [2020-07-11 02:29:06,946 INFO L280 TraceCheckUtils]: 70: Hoare triple {22468#true} havoc #t~ret0.base, #t~ret0.offset; {22468#true} is VALID [2020-07-11 02:29:06,946 INFO L280 TraceCheckUtils]: 71: Hoare triple {22468#true} assume true; {22468#true} is VALID [2020-07-11 02:29:06,946 INFO L275 TraceCheckUtils]: 72: Hoare quadruple {22468#true} {22469#false} #201#return; {22469#false} is VALID [2020-07-11 02:29:06,947 INFO L280 TraceCheckUtils]: 73: Hoare triple {22469#false} havoc #t~ret19.base, #t~ret19.offset; {22469#false} is VALID [2020-07-11 02:29:06,947 INFO L263 TraceCheckUtils]: 74: Hoare triple {22469#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {22469#false} is VALID [2020-07-11 02:29:06,947 INFO L280 TraceCheckUtils]: 75: Hoare triple {22469#false} ~cond := #in~cond; {22469#false} is VALID [2020-07-11 02:29:06,947 INFO L280 TraceCheckUtils]: 76: Hoare triple {22469#false} assume 0 == ~cond; {22469#false} is VALID [2020-07-11 02:29:06,948 INFO L280 TraceCheckUtils]: 77: Hoare triple {22469#false} assume !false; {22469#false} is VALID [2020-07-11 02:29:06,954 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2020-07-11 02:29:06,955 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [621182394] [2020-07-11 02:29:06,955 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:29:06,955 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2020-07-11 02:29:06,955 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [432884312] [2020-07-11 02:29:06,956 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 78 [2020-07-11 02:29:06,956 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:29:06,956 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states. [2020-07-11 02:29:07,048 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:07,049 INFO L459 AbstractCegarLoop]: Interpolant automaton has 8 states [2020-07-11 02:29:07,049 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:29:07,049 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2020-07-11 02:29:07,049 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=14, Invalid=42, Unknown=0, NotChecked=0, Total=56 [2020-07-11 02:29:07,050 INFO L87 Difference]: Start difference. First operand 253 states and 281 transitions. Second operand 8 states. [2020-07-11 02:29:08,723 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:08,724 INFO L93 Difference]: Finished difference Result 521 states and 577 transitions. [2020-07-11 02:29:08,724 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2020-07-11 02:29:08,724 INFO L78 Accepts]: Start accepts. Automaton has 8 states. Word has length 78 [2020-07-11 02:29:08,724 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:29:08,724 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-11 02:29:08,727 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 306 transitions. [2020-07-11 02:29:08,727 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 8 states. [2020-07-11 02:29:08,729 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 306 transitions. [2020-07-11 02:29:08,730 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 306 transitions. [2020-07-11 02:29:09,041 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 306 edges. 306 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:09,056 INFO L225 Difference]: With dead ends: 521 [2020-07-11 02:29:09,056 INFO L226 Difference]: Without dead ends: 331 [2020-07-11 02:29:09,060 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 22 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=151, Unknown=0, NotChecked=0, Total=210 [2020-07-11 02:29:09,061 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 331 states. [2020-07-11 02:29:09,510 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 331 to 264. [2020-07-11 02:29:09,510 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:29:09,510 INFO L82 GeneralOperation]: Start isEquivalent. First operand 331 states. Second operand 264 states. [2020-07-11 02:29:09,510 INFO L74 IsIncluded]: Start isIncluded. First operand 331 states. Second operand 264 states. [2020-07-11 02:29:09,511 INFO L87 Difference]: Start difference. First operand 331 states. Second operand 264 states. [2020-07-11 02:29:09,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:09,520 INFO L93 Difference]: Finished difference Result 331 states and 365 transitions. [2020-07-11 02:29:09,521 INFO L276 IsEmpty]: Start isEmpty. Operand 331 states and 365 transitions. [2020-07-11 02:29:09,522 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:09,522 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:09,522 INFO L74 IsIncluded]: Start isIncluded. First operand 264 states. Second operand 331 states. [2020-07-11 02:29:09,522 INFO L87 Difference]: Start difference. First operand 264 states. Second operand 331 states. [2020-07-11 02:29:09,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:09,530 INFO L93 Difference]: Finished difference Result 331 states and 365 transitions. [2020-07-11 02:29:09,530 INFO L276 IsEmpty]: Start isEmpty. Operand 331 states and 365 transitions. [2020-07-11 02:29:09,531 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:09,532 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:09,532 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:29:09,532 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:29:09,532 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 264 states. [2020-07-11 02:29:09,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 264 states to 264 states and 292 transitions. [2020-07-11 02:29:09,538 INFO L78 Accepts]: Start accepts. Automaton has 264 states and 292 transitions. Word has length 78 [2020-07-11 02:29:09,538 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:29:09,538 INFO L479 AbstractCegarLoop]: Abstraction has 264 states and 292 transitions. [2020-07-11 02:29:09,538 INFO L480 AbstractCegarLoop]: Interpolant automaton has 8 states. [2020-07-11 02:29:09,538 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 264 states and 292 transitions. [2020-07-11 02:29:09,951 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 292 edges. 292 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:09,952 INFO L276 IsEmpty]: Start isEmpty. Operand 264 states and 292 transitions. [2020-07-11 02:29:09,953 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2020-07-11 02:29:09,953 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:29:09,953 INFO L422 BasicCegarLoop]: trace histogram [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, 1, 1, 1] [2020-07-11 02:29:09,954 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable14 [2020-07-11 02:29:09,954 INFO L427 AbstractCegarLoop]: === Iteration 16 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:29:09,954 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:29:09,954 INFO L82 PathProgramCache]: Analyzing trace with hash -1446971750, now seen corresponding path program 1 times [2020-07-11 02:29:09,955 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:29:09,955 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1340387857] [2020-07-11 02:29:09,955 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:29:09,973 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:10,063 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:10,066 INFO L280 TraceCheckUtils]: 0: Hoare triple {24759#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {24737#true} is VALID [2020-07-11 02:29:10,066 INFO L280 TraceCheckUtils]: 1: Hoare triple {24737#true} #valid := #valid[0 := 0]; {24737#true} is VALID [2020-07-11 02:29:10,066 INFO L280 TraceCheckUtils]: 2: Hoare triple {24737#true} assume 0 < #StackHeapBarrier; {24737#true} is VALID [2020-07-11 02:29:10,066 INFO L280 TraceCheckUtils]: 3: Hoare triple {24737#true} assume true; {24737#true} is VALID [2020-07-11 02:29:10,067 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {24737#true} {24737#true} #205#return; {24737#true} is VALID [2020-07-11 02:29:10,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:10,071 INFO L280 TraceCheckUtils]: 0: Hoare triple {24737#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {24737#true} is VALID [2020-07-11 02:29:10,071 INFO L280 TraceCheckUtils]: 1: Hoare triple {24737#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {24737#true} is VALID [2020-07-11 02:29:10,071 INFO L280 TraceCheckUtils]: 2: Hoare triple {24737#true} ~n := #in~n; {24737#true} is VALID [2020-07-11 02:29:10,072 INFO L280 TraceCheckUtils]: 3: Hoare triple {24737#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {24737#true} is VALID [2020-07-11 02:29:10,072 INFO L280 TraceCheckUtils]: 4: Hoare triple {24737#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {24737#true} is VALID [2020-07-11 02:29:10,072 INFO L280 TraceCheckUtils]: 5: Hoare triple {24737#true} havoc #t~ret0.base, #t~ret0.offset; {24737#true} is VALID [2020-07-11 02:29:10,072 INFO L280 TraceCheckUtils]: 6: Hoare triple {24737#true} assume true; {24737#true} is VALID [2020-07-11 02:29:10,073 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {24737#true} {24738#false} #201#return; {24738#false} is VALID [2020-07-11 02:29:10,074 INFO L263 TraceCheckUtils]: 0: Hoare triple {24737#true} call ULTIMATE.init(); {24759#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:29:10,074 INFO L280 TraceCheckUtils]: 1: Hoare triple {24759#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {24737#true} is VALID [2020-07-11 02:29:10,074 INFO L280 TraceCheckUtils]: 2: Hoare triple {24737#true} #valid := #valid[0 := 0]; {24737#true} is VALID [2020-07-11 02:29:10,074 INFO L280 TraceCheckUtils]: 3: Hoare triple {24737#true} assume 0 < #StackHeapBarrier; {24737#true} is VALID [2020-07-11 02:29:10,075 INFO L280 TraceCheckUtils]: 4: Hoare triple {24737#true} assume true; {24737#true} is VALID [2020-07-11 02:29:10,075 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {24737#true} {24737#true} #205#return; {24737#true} is VALID [2020-07-11 02:29:10,075 INFO L263 TraceCheckUtils]: 6: Hoare triple {24737#true} call #t~ret21 := main(); {24737#true} is VALID [2020-07-11 02:29:10,075 INFO L280 TraceCheckUtils]: 7: Hoare triple {24737#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {24737#true} is VALID [2020-07-11 02:29:10,075 INFO L280 TraceCheckUtils]: 8: Hoare triple {24737#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {24737#true} is VALID [2020-07-11 02:29:10,075 INFO L263 TraceCheckUtils]: 9: Hoare triple {24737#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {24737#true} is VALID [2020-07-11 02:29:10,076 INFO L280 TraceCheckUtils]: 10: Hoare triple {24737#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {24737#true} is VALID [2020-07-11 02:29:10,076 INFO L280 TraceCheckUtils]: 11: Hoare triple {24737#true} ~start~0 := 0; {24737#true} is VALID [2020-07-11 02:29:10,076 INFO L280 TraceCheckUtils]: 12: Hoare triple {24737#true} ~i~0 := -1; {24744#(<= (+ parse_expression_list_~i~0 1) 0)} is VALID [2020-07-11 02:29:10,077 INFO L280 TraceCheckUtils]: 13: Hoare triple {24744#(<= (+ parse_expression_list_~i~0 1) 0)} ~j~0 := -1; {24744#(<= (+ parse_expression_list_~i~0 1) 0)} is VALID [2020-07-11 02:29:10,078 INFO L280 TraceCheckUtils]: 14: Hoare triple {24744#(<= (+ parse_expression_list_~i~0 1) 0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {24744#(<= (+ parse_expression_list_~i~0 1) 0)} is VALID [2020-07-11 02:29:10,078 INFO L280 TraceCheckUtils]: 15: Hoare triple {24744#(<= (+ parse_expression_list_~i~0 1) 0)} assume !(~str.base == 0 && ~str.offset == 0); {24744#(<= (+ parse_expression_list_~i~0 1) 0)} is VALID [2020-07-11 02:29:10,079 INFO L280 TraceCheckUtils]: 16: Hoare triple {24744#(<= (+ parse_expression_list_~i~0 1) 0)} #t~post2 := ~i~0; {24745#(<= (+ |parse_expression_list_#t~post2| 1) 0)} is VALID [2020-07-11 02:29:10,080 INFO L280 TraceCheckUtils]: 17: Hoare triple {24745#(<= (+ |parse_expression_list_#t~post2| 1) 0)} ~i~0 := 1 + #t~post2; {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,081 INFO L280 TraceCheckUtils]: 18: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} havoc #t~post2; {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,081 INFO L280 TraceCheckUtils]: 19: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,082 INFO L280 TraceCheckUtils]: 20: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} #t~switch4 := 0 == #t~mem3; {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,083 INFO L280 TraceCheckUtils]: 21: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} assume !#t~switch4; {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,083 INFO L280 TraceCheckUtils]: 22: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} havoc #t~mem3; {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,084 INFO L280 TraceCheckUtils]: 23: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} havoc #t~switch4; {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,084 INFO L280 TraceCheckUtils]: 24: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} SUMMARY for call #t~mem1 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L51-1 {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,085 INFO L280 TraceCheckUtils]: 25: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} assume !!(0 != #t~mem1); {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,085 INFO L280 TraceCheckUtils]: 26: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} havoc #t~mem1; {24746#(<= parse_expression_list_~i~0 0)} is VALID [2020-07-11 02:29:10,086 INFO L280 TraceCheckUtils]: 27: Hoare triple {24746#(<= parse_expression_list_~i~0 0)} #t~post2 := ~i~0; {24747#(<= |parse_expression_list_#t~post2| 0)} is VALID [2020-07-11 02:29:10,087 INFO L280 TraceCheckUtils]: 28: Hoare triple {24747#(<= |parse_expression_list_#t~post2| 0)} ~i~0 := 1 + #t~post2; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,088 INFO L280 TraceCheckUtils]: 29: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} havoc #t~post2; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,088 INFO L280 TraceCheckUtils]: 30: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,089 INFO L280 TraceCheckUtils]: 31: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} #t~switch4 := 0 == #t~mem3; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,089 INFO L280 TraceCheckUtils]: 32: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} assume #t~switch4; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,090 INFO L280 TraceCheckUtils]: 33: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,090 INFO L280 TraceCheckUtils]: 34: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} #t~short7 := 32 == #t~mem5; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,091 INFO L280 TraceCheckUtils]: 35: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} assume !#t~short7; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,091 INFO L280 TraceCheckUtils]: 36: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,092 INFO L280 TraceCheckUtils]: 37: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} #t~short7 := 9 == #t~mem6; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,093 INFO L280 TraceCheckUtils]: 38: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} assume !#t~short7; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,093 INFO L280 TraceCheckUtils]: 39: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} havoc #t~mem5; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,094 INFO L280 TraceCheckUtils]: 40: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} havoc #t~short7; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,095 INFO L280 TraceCheckUtils]: 41: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} havoc #t~mem6; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,095 INFO L280 TraceCheckUtils]: 42: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,096 INFO L280 TraceCheckUtils]: 43: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} assume !(34 == #t~mem9); {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,096 INFO L280 TraceCheckUtils]: 44: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} havoc #t~mem9; {24748#(<= parse_expression_list_~i~0 1)} is VALID [2020-07-11 02:29:10,097 INFO L280 TraceCheckUtils]: 45: Hoare triple {24748#(<= parse_expression_list_~i~0 1)} ~j~0 := ~i~0 - 1; {24749#(<= parse_expression_list_~j~0 0)} is VALID [2020-07-11 02:29:10,098 INFO L280 TraceCheckUtils]: 46: Hoare triple {24749#(<= parse_expression_list_~j~0 0)} #t~short14 := 0 < ~j~0; {24750#(not |parse_expression_list_#t~short14|)} is VALID [2020-07-11 02:29:10,098 INFO L280 TraceCheckUtils]: 47: Hoare triple {24750#(not |parse_expression_list_#t~short14|)} assume #t~short14; {24738#false} is VALID [2020-07-11 02:29:10,099 INFO L280 TraceCheckUtils]: 48: Hoare triple {24738#false} SUMMARY for call #t~mem11 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L58-2 {24738#false} is VALID [2020-07-11 02:29:10,099 INFO L280 TraceCheckUtils]: 49: Hoare triple {24738#false} #t~short13 := 32 == #t~mem11; {24738#false} is VALID [2020-07-11 02:29:10,099 INFO L280 TraceCheckUtils]: 50: Hoare triple {24738#false} assume !#t~short13; {24738#false} is VALID [2020-07-11 02:29:10,099 INFO L280 TraceCheckUtils]: 51: Hoare triple {24738#false} SUMMARY for call #t~mem12 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L58-6 {24738#false} is VALID [2020-07-11 02:29:10,099 INFO L280 TraceCheckUtils]: 52: Hoare triple {24738#false} #t~short13 := 9 == #t~mem12; {24738#false} is VALID [2020-07-11 02:29:10,099 INFO L280 TraceCheckUtils]: 53: Hoare triple {24738#false} #t~short14 := #t~short13; {24738#false} is VALID [2020-07-11 02:29:10,100 INFO L280 TraceCheckUtils]: 54: Hoare triple {24738#false} assume !#t~short14; {24738#false} is VALID [2020-07-11 02:29:10,100 INFO L280 TraceCheckUtils]: 55: Hoare triple {24738#false} havoc #t~mem12; {24738#false} is VALID [2020-07-11 02:29:10,100 INFO L280 TraceCheckUtils]: 56: Hoare triple {24738#false} havoc #t~mem11; {24738#false} is VALID [2020-07-11 02:29:10,100 INFO L280 TraceCheckUtils]: 57: Hoare triple {24738#false} havoc #t~short13; {24738#false} is VALID [2020-07-11 02:29:10,100 INFO L280 TraceCheckUtils]: 58: Hoare triple {24738#false} havoc #t~short14; {24738#false} is VALID [2020-07-11 02:29:10,100 INFO L280 TraceCheckUtils]: 59: Hoare triple {24738#false} #t~short17 := 0 < ~j~0; {24738#false} is VALID [2020-07-11 02:29:10,101 INFO L280 TraceCheckUtils]: 60: Hoare triple {24738#false} assume !#t~short17; {24738#false} is VALID [2020-07-11 02:29:10,101 INFO L280 TraceCheckUtils]: 61: Hoare triple {24738#false} assume !#t~short17; {24738#false} is VALID [2020-07-11 02:29:10,101 INFO L280 TraceCheckUtils]: 62: Hoare triple {24738#false} havoc #t~mem16; {24738#false} is VALID [2020-07-11 02:29:10,101 INFO L280 TraceCheckUtils]: 63: Hoare triple {24738#false} havoc #t~short17; {24738#false} is VALID [2020-07-11 02:29:10,101 INFO L280 TraceCheckUtils]: 64: Hoare triple {24738#false} assume ~start~0 <= ~j~0; {24738#false} is VALID [2020-07-11 02:29:10,102 INFO L263 TraceCheckUtils]: 65: Hoare triple {24738#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)); {24737#true} is VALID [2020-07-11 02:29:10,102 INFO L280 TraceCheckUtils]: 66: Hoare triple {24737#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {24737#true} is VALID [2020-07-11 02:29:10,102 INFO L280 TraceCheckUtils]: 67: Hoare triple {24737#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {24737#true} is VALID [2020-07-11 02:29:10,103 INFO L280 TraceCheckUtils]: 68: Hoare triple {24737#true} ~n := #in~n; {24737#true} is VALID [2020-07-11 02:29:10,103 INFO L280 TraceCheckUtils]: 69: Hoare triple {24737#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {24737#true} is VALID [2020-07-11 02:29:10,103 INFO L280 TraceCheckUtils]: 70: Hoare triple {24737#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {24737#true} is VALID [2020-07-11 02:29:10,103 INFO L280 TraceCheckUtils]: 71: Hoare triple {24737#true} havoc #t~ret0.base, #t~ret0.offset; {24737#true} is VALID [2020-07-11 02:29:10,103 INFO L280 TraceCheckUtils]: 72: Hoare triple {24737#true} assume true; {24737#true} is VALID [2020-07-11 02:29:10,104 INFO L275 TraceCheckUtils]: 73: Hoare quadruple {24737#true} {24738#false} #201#return; {24738#false} is VALID [2020-07-11 02:29:10,104 INFO L280 TraceCheckUtils]: 74: Hoare triple {24738#false} havoc #t~ret19.base, #t~ret19.offset; {24738#false} is VALID [2020-07-11 02:29:10,104 INFO L263 TraceCheckUtils]: 75: Hoare triple {24738#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {24738#false} is VALID [2020-07-11 02:29:10,104 INFO L280 TraceCheckUtils]: 76: Hoare triple {24738#false} ~cond := #in~cond; {24738#false} is VALID [2020-07-11 02:29:10,104 INFO L280 TraceCheckUtils]: 77: Hoare triple {24738#false} assume 0 == ~cond; {24738#false} is VALID [2020-07-11 02:29:10,104 INFO L280 TraceCheckUtils]: 78: Hoare triple {24738#false} assume !false; {24738#false} is VALID [2020-07-11 02:29:10,110 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-11 02:29:10,111 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1340387857] [2020-07-11 02:29:10,113 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-11 02:29:10,114 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10] total 10 [2020-07-11 02:29:10,114 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [728110496] [2020-07-11 02:29:10,114 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 79 [2020-07-11 02:29:10,115 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:29:10,115 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2020-07-11 02:29:10,198 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:10,199 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2020-07-11 02:29:10,199 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:29:10,199 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2020-07-11 02:29:10,199 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2020-07-11 02:29:10,199 INFO L87 Difference]: Start difference. First operand 264 states and 292 transitions. Second operand 10 states. [2020-07-11 02:29:13,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:13,009 INFO L93 Difference]: Finished difference Result 599 states and 665 transitions. [2020-07-11 02:29:13,009 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2020-07-11 02:29:13,009 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 79 [2020-07-11 02:29:13,010 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:29:13,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-11 02:29:13,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 364 transitions. [2020-07-11 02:29:13,013 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2020-07-11 02:29:13,015 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 364 transitions. [2020-07-11 02:29:13,016 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states and 364 transitions. [2020-07-11 02:29:13,426 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 364 edges. 364 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:13,440 INFO L225 Difference]: With dead ends: 599 [2020-07-11 02:29:13,441 INFO L226 Difference]: Without dead ends: 435 [2020-07-11 02:29:13,441 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 24 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 63 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=111, Invalid=309, Unknown=0, NotChecked=0, Total=420 [2020-07-11 02:29:13,442 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 435 states. [2020-07-11 02:29:14,076 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 435 to 355. [2020-07-11 02:29:14,076 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:29:14,076 INFO L82 GeneralOperation]: Start isEquivalent. First operand 435 states. Second operand 355 states. [2020-07-11 02:29:14,076 INFO L74 IsIncluded]: Start isIncluded. First operand 435 states. Second operand 355 states. [2020-07-11 02:29:14,077 INFO L87 Difference]: Start difference. First operand 435 states. Second operand 355 states. [2020-07-11 02:29:14,088 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:14,088 INFO L93 Difference]: Finished difference Result 435 states and 481 transitions. [2020-07-11 02:29:14,089 INFO L276 IsEmpty]: Start isEmpty. Operand 435 states and 481 transitions. [2020-07-11 02:29:14,090 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:14,090 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:14,090 INFO L74 IsIncluded]: Start isIncluded. First operand 355 states. Second operand 435 states. [2020-07-11 02:29:14,090 INFO L87 Difference]: Start difference. First operand 355 states. Second operand 435 states. [2020-07-11 02:29:14,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:14,104 INFO L93 Difference]: Finished difference Result 435 states and 481 transitions. [2020-07-11 02:29:14,104 INFO L276 IsEmpty]: Start isEmpty. Operand 435 states and 481 transitions. [2020-07-11 02:29:14,105 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:14,105 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:14,105 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:29:14,105 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:29:14,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 355 states. [2020-07-11 02:29:14,114 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 355 states to 355 states and 393 transitions. [2020-07-11 02:29:14,115 INFO L78 Accepts]: Start accepts. Automaton has 355 states and 393 transitions. Word has length 79 [2020-07-11 02:29:14,115 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:29:14,115 INFO L479 AbstractCegarLoop]: Abstraction has 355 states and 393 transitions. [2020-07-11 02:29:14,115 INFO L480 AbstractCegarLoop]: Interpolant automaton has 10 states. [2020-07-11 02:29:14,115 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 355 states and 393 transitions. [2020-07-11 02:29:14,664 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 393 edges. 393 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:14,664 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 393 transitions. [2020-07-11 02:29:14,666 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2020-07-11 02:29:14,666 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:29:14,667 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-11 02:29:14,667 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15 [2020-07-11 02:29:14,667 INFO L427 AbstractCegarLoop]: === Iteration 17 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:29:14,668 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:29:14,668 INFO L82 PathProgramCache]: Analyzing trace with hash 1140392269, now seen corresponding path program 2 times [2020-07-11 02:29:14,668 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:29:14,668 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [781256284] [2020-07-11 02:29:14,668 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:29:14,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:14,820 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:14,822 INFO L280 TraceCheckUtils]: 0: Hoare triple {27586#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {27562#true} is VALID [2020-07-11 02:29:14,823 INFO L280 TraceCheckUtils]: 1: Hoare triple {27562#true} #valid := #valid[0 := 0]; {27562#true} is VALID [2020-07-11 02:29:14,823 INFO L280 TraceCheckUtils]: 2: Hoare triple {27562#true} assume 0 < #StackHeapBarrier; {27562#true} is VALID [2020-07-11 02:29:14,823 INFO L280 TraceCheckUtils]: 3: Hoare triple {27562#true} assume true; {27562#true} is VALID [2020-07-11 02:29:14,823 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {27562#true} {27562#true} #205#return; {27562#true} is VALID [2020-07-11 02:29:14,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:14,834 INFO L280 TraceCheckUtils]: 0: Hoare triple {27562#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {27562#true} is VALID [2020-07-11 02:29:14,834 INFO L280 TraceCheckUtils]: 1: Hoare triple {27562#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {27562#true} is VALID [2020-07-11 02:29:14,835 INFO L280 TraceCheckUtils]: 2: Hoare triple {27562#true} ~n := #in~n; {27562#true} is VALID [2020-07-11 02:29:14,835 INFO L280 TraceCheckUtils]: 3: Hoare triple {27562#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {27562#true} is VALID [2020-07-11 02:29:14,835 INFO L280 TraceCheckUtils]: 4: Hoare triple {27562#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {27562#true} is VALID [2020-07-11 02:29:14,835 INFO L280 TraceCheckUtils]: 5: Hoare triple {27562#true} havoc #t~ret0.base, #t~ret0.offset; {27562#true} is VALID [2020-07-11 02:29:14,836 INFO L280 TraceCheckUtils]: 6: Hoare triple {27562#true} assume true; {27562#true} is VALID [2020-07-11 02:29:14,837 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {27562#true} {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #201#return; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,838 INFO L263 TraceCheckUtils]: 0: Hoare triple {27562#true} call ULTIMATE.init(); {27586#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:29:14,839 INFO L280 TraceCheckUtils]: 1: Hoare triple {27586#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {27562#true} is VALID [2020-07-11 02:29:14,839 INFO L280 TraceCheckUtils]: 2: Hoare triple {27562#true} #valid := #valid[0 := 0]; {27562#true} is VALID [2020-07-11 02:29:14,839 INFO L280 TraceCheckUtils]: 3: Hoare triple {27562#true} assume 0 < #StackHeapBarrier; {27562#true} is VALID [2020-07-11 02:29:14,839 INFO L280 TraceCheckUtils]: 4: Hoare triple {27562#true} assume true; {27562#true} is VALID [2020-07-11 02:29:14,839 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {27562#true} {27562#true} #205#return; {27562#true} is VALID [2020-07-11 02:29:14,840 INFO L263 TraceCheckUtils]: 6: Hoare triple {27562#true} call #t~ret21 := main(); {27562#true} is VALID [2020-07-11 02:29:14,840 INFO L280 TraceCheckUtils]: 7: Hoare triple {27562#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {27562#true} is VALID [2020-07-11 02:29:14,840 INFO L280 TraceCheckUtils]: 8: Hoare triple {27562#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {27562#true} is VALID [2020-07-11 02:29:14,840 INFO L263 TraceCheckUtils]: 9: Hoare triple {27562#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {27562#true} is VALID [2020-07-11 02:29:14,841 INFO L280 TraceCheckUtils]: 10: Hoare triple {27562#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {27562#true} is VALID [2020-07-11 02:29:14,841 INFO L280 TraceCheckUtils]: 11: Hoare triple {27562#true} ~start~0 := 0; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,842 INFO L280 TraceCheckUtils]: 12: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,842 INFO L280 TraceCheckUtils]: 13: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} ~j~0 := -1; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,843 INFO L280 TraceCheckUtils]: 14: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,843 INFO L280 TraceCheckUtils]: 15: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} assume !(~str.base == 0 && ~str.offset == 0); {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,844 INFO L280 TraceCheckUtils]: 16: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,845 INFO L280 TraceCheckUtils]: 17: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,845 INFO L280 TraceCheckUtils]: 18: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,846 INFO L280 TraceCheckUtils]: 19: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,846 INFO L280 TraceCheckUtils]: 20: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,847 INFO L280 TraceCheckUtils]: 21: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} assume #t~switch4; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,848 INFO L280 TraceCheckUtils]: 22: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,848 INFO L280 TraceCheckUtils]: 23: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,849 INFO L280 TraceCheckUtils]: 24: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} assume #t~short7; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,849 INFO L280 TraceCheckUtils]: 25: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} assume !!#t~short7; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,850 INFO L280 TraceCheckUtils]: 26: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} havoc #t~mem5; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,850 INFO L280 TraceCheckUtils]: 27: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} havoc #t~short7; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,851 INFO L280 TraceCheckUtils]: 28: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} havoc #t~mem6; {27569#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,852 INFO L280 TraceCheckUtils]: 29: Hoare triple {27569#(= 0 parse_expression_list_~start~0)} #t~post8 := ~start~0; {27570#(= 0 |parse_expression_list_#t~post8|)} is VALID [2020-07-11 02:29:14,854 INFO L280 TraceCheckUtils]: 30: Hoare triple {27570#(= 0 |parse_expression_list_#t~post8|)} ~start~0 := 1 + #t~post8; {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,854 INFO L280 TraceCheckUtils]: 31: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} havoc #t~post8; {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,855 INFO L280 TraceCheckUtils]: 32: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,855 INFO L280 TraceCheckUtils]: 33: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,856 INFO L280 TraceCheckUtils]: 34: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} assume #t~short7; {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,857 INFO L280 TraceCheckUtils]: 35: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} assume !!#t~short7; {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,857 INFO L280 TraceCheckUtils]: 36: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} havoc #t~mem5; {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,858 INFO L280 TraceCheckUtils]: 37: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} havoc #t~short7; {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,858 INFO L280 TraceCheckUtils]: 38: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} havoc #t~mem6; {27571#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,859 INFO L280 TraceCheckUtils]: 39: Hoare triple {27571#(<= 1 parse_expression_list_~start~0)} #t~post8 := ~start~0; {27572#(<= 1 |parse_expression_list_#t~post8|)} is VALID [2020-07-11 02:29:14,860 INFO L280 TraceCheckUtils]: 40: Hoare triple {27572#(<= 1 |parse_expression_list_#t~post8|)} ~start~0 := 1 + #t~post8; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,861 INFO L280 TraceCheckUtils]: 41: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} havoc #t~post8; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,861 INFO L280 TraceCheckUtils]: 42: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,862 INFO L280 TraceCheckUtils]: 43: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,862 INFO L280 TraceCheckUtils]: 44: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} assume !#t~short7; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,863 INFO L280 TraceCheckUtils]: 45: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,864 INFO L280 TraceCheckUtils]: 46: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} #t~short7 := 9 == #t~mem6; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,864 INFO L280 TraceCheckUtils]: 47: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} assume !#t~short7; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,865 INFO L280 TraceCheckUtils]: 48: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} havoc #t~mem5; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,865 INFO L280 TraceCheckUtils]: 49: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} havoc #t~short7; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,866 INFO L280 TraceCheckUtils]: 50: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} havoc #t~mem6; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,866 INFO L280 TraceCheckUtils]: 51: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,867 INFO L280 TraceCheckUtils]: 52: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} assume !(34 == #t~mem9); {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,867 INFO L280 TraceCheckUtils]: 53: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} havoc #t~mem9; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,868 INFO L280 TraceCheckUtils]: 54: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {27573#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,868 INFO L280 TraceCheckUtils]: 55: Hoare triple {27573#(<= 2 parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {27574#(or (<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} is VALID [2020-07-11 02:29:14,869 INFO L280 TraceCheckUtils]: 56: Hoare triple {27574#(or (<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0) |parse_expression_list_#t~short14|)} assume !#t~short14; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,870 INFO L280 TraceCheckUtils]: 57: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short14; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,870 INFO L280 TraceCheckUtils]: 58: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem12; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,871 INFO L280 TraceCheckUtils]: 59: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem11; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,872 INFO L280 TraceCheckUtils]: 60: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short13; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,885 INFO L280 TraceCheckUtils]: 61: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short14; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,891 INFO L280 TraceCheckUtils]: 62: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,892 INFO L280 TraceCheckUtils]: 63: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short17; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,893 INFO L280 TraceCheckUtils]: 64: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume !#t~short17; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,894 INFO L280 TraceCheckUtils]: 65: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~mem16; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,895 INFO L280 TraceCheckUtils]: 66: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~short17; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,895 INFO L280 TraceCheckUtils]: 67: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,896 INFO L263 TraceCheckUtils]: 68: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} 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)); {27562#true} is VALID [2020-07-11 02:29:14,896 INFO L280 TraceCheckUtils]: 69: Hoare triple {27562#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {27562#true} is VALID [2020-07-11 02:29:14,896 INFO L280 TraceCheckUtils]: 70: Hoare triple {27562#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {27562#true} is VALID [2020-07-11 02:29:14,897 INFO L280 TraceCheckUtils]: 71: Hoare triple {27562#true} ~n := #in~n; {27562#true} is VALID [2020-07-11 02:29:14,897 INFO L280 TraceCheckUtils]: 72: Hoare triple {27562#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {27562#true} is VALID [2020-07-11 02:29:14,897 INFO L280 TraceCheckUtils]: 73: Hoare triple {27562#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {27562#true} is VALID [2020-07-11 02:29:14,898 INFO L280 TraceCheckUtils]: 74: Hoare triple {27562#true} havoc #t~ret0.base, #t~ret0.offset; {27562#true} is VALID [2020-07-11 02:29:14,898 INFO L280 TraceCheckUtils]: 75: Hoare triple {27562#true} assume true; {27562#true} is VALID [2020-07-11 02:29:14,900 INFO L275 TraceCheckUtils]: 76: Hoare quadruple {27562#true} {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} #201#return; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,901 INFO L280 TraceCheckUtils]: 77: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} havoc #t~ret19.base, #t~ret19.offset; {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:14,902 INFO L263 TraceCheckUtils]: 78: Hoare triple {27575#(<= (+ parse_expression_list_~j~0 2) parse_expression_list_~start~0)} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {27584#(not (= 0 |__VERIFIER_assert_#in~cond|))} is VALID [2020-07-11 02:29:14,903 INFO L280 TraceCheckUtils]: 79: Hoare triple {27584#(not (= 0 |__VERIFIER_assert_#in~cond|))} ~cond := #in~cond; {27585#(not (= 0 __VERIFIER_assert_~cond))} is VALID [2020-07-11 02:29:14,904 INFO L280 TraceCheckUtils]: 80: Hoare triple {27585#(not (= 0 __VERIFIER_assert_~cond))} assume 0 == ~cond; {27563#false} is VALID [2020-07-11 02:29:14,904 INFO L280 TraceCheckUtils]: 81: Hoare triple {27563#false} assume !false; {27563#false} is VALID [2020-07-11 02:29:14,918 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-11 02:29:14,919 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [781256284] [2020-07-11 02:29:14,919 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-11 02:29:14,919 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12] total 12 [2020-07-11 02:29:14,920 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1990861240] [2020-07-11 02:29:14,921 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 82 [2020-07-11 02:29:14,922 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:29:14,922 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states. [2020-07-11 02:29:15,019 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-11 02:29:15,019 INFO L459 AbstractCegarLoop]: Interpolant automaton has 12 states [2020-07-11 02:29:15,019 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:29:15,019 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2020-07-11 02:29:15,020 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=109, Unknown=0, NotChecked=0, Total=132 [2020-07-11 02:29:15,020 INFO L87 Difference]: Start difference. First operand 355 states and 393 transitions. Second operand 12 states. [2020-07-11 02:29:18,369 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:18,370 INFO L93 Difference]: Finished difference Result 694 states and 770 transitions. [2020-07-11 02:29:18,370 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2020-07-11 02:29:18,370 INFO L78 Accepts]: Start accepts. Automaton has 12 states. Word has length 82 [2020-07-11 02:29:18,370 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:29:18,370 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-11 02:29:18,372 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 437 transitions. [2020-07-11 02:29:18,373 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 12 states. [2020-07-11 02:29:18,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 437 transitions. [2020-07-11 02:29:18,376 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 437 transitions. [2020-07-11 02:29:18,842 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 437 edges. 437 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:18,855 INFO L225 Difference]: With dead ends: 694 [2020-07-11 02:29:18,856 INFO L226 Difference]: Without dead ends: 525 [2020-07-11 02:29:18,857 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 62 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=391, Unknown=0, NotChecked=0, Total=462 [2020-07-11 02:29:18,857 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 525 states. [2020-07-11 02:29:19,559 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 525 to 390. [2020-07-11 02:29:19,560 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:29:19,560 INFO L82 GeneralOperation]: Start isEquivalent. First operand 525 states. Second operand 390 states. [2020-07-11 02:29:19,560 INFO L74 IsIncluded]: Start isIncluded. First operand 525 states. Second operand 390 states. [2020-07-11 02:29:19,560 INFO L87 Difference]: Start difference. First operand 525 states. Second operand 390 states. [2020-07-11 02:29:19,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:19,574 INFO L93 Difference]: Finished difference Result 525 states and 583 transitions. [2020-07-11 02:29:19,574 INFO L276 IsEmpty]: Start isEmpty. Operand 525 states and 583 transitions. [2020-07-11 02:29:19,575 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:19,575 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:19,575 INFO L74 IsIncluded]: Start isIncluded. First operand 390 states. Second operand 525 states. [2020-07-11 02:29:19,576 INFO L87 Difference]: Start difference. First operand 390 states. Second operand 525 states. [2020-07-11 02:29:19,592 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:19,592 INFO L93 Difference]: Finished difference Result 525 states and 583 transitions. [2020-07-11 02:29:19,592 INFO L276 IsEmpty]: Start isEmpty. Operand 525 states and 583 transitions. [2020-07-11 02:29:19,593 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:19,594 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:19,594 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:29:19,594 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:29:19,594 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 390 states. [2020-07-11 02:29:19,603 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 390 states to 390 states and 432 transitions. [2020-07-11 02:29:19,604 INFO L78 Accepts]: Start accepts. Automaton has 390 states and 432 transitions. Word has length 82 [2020-07-11 02:29:19,604 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:29:19,604 INFO L479 AbstractCegarLoop]: Abstraction has 390 states and 432 transitions. [2020-07-11 02:29:19,604 INFO L480 AbstractCegarLoop]: Interpolant automaton has 12 states. [2020-07-11 02:29:19,604 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 390 states and 432 transitions. [2020-07-11 02:29:20,230 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 432 edges. 432 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:20,230 INFO L276 IsEmpty]: Start isEmpty. Operand 390 states and 432 transitions. [2020-07-11 02:29:20,232 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 86 [2020-07-11 02:29:20,232 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:29:20,232 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-11 02:29:20,232 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16 [2020-07-11 02:29:20,233 INFO L427 AbstractCegarLoop]: === Iteration 18 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:29:20,233 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:29:20,233 INFO L82 PathProgramCache]: Analyzing trace with hash -1836590973, now seen corresponding path program 2 times [2020-07-11 02:29:20,233 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:29:20,233 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [592009904] [2020-07-11 02:29:20,233 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:29:20,244 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:20,442 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:20,444 INFO L280 TraceCheckUtils]: 0: Hoare triple {30853#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {30827#true} is VALID [2020-07-11 02:29:20,445 INFO L280 TraceCheckUtils]: 1: Hoare triple {30827#true} #valid := #valid[0 := 0]; {30827#true} is VALID [2020-07-11 02:29:20,445 INFO L280 TraceCheckUtils]: 2: Hoare triple {30827#true} assume 0 < #StackHeapBarrier; {30827#true} is VALID [2020-07-11 02:29:20,445 INFO L280 TraceCheckUtils]: 3: Hoare triple {30827#true} assume true; {30827#true} is VALID [2020-07-11 02:29:20,445 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {30827#true} {30827#true} #205#return; {30827#true} is VALID [2020-07-11 02:29:20,447 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:20,450 INFO L280 TraceCheckUtils]: 0: Hoare triple {30827#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {30827#true} is VALID [2020-07-11 02:29:20,450 INFO L280 TraceCheckUtils]: 1: Hoare triple {30827#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {30827#true} is VALID [2020-07-11 02:29:20,451 INFO L280 TraceCheckUtils]: 2: Hoare triple {30827#true} ~n := #in~n; {30827#true} is VALID [2020-07-11 02:29:20,451 INFO L280 TraceCheckUtils]: 3: Hoare triple {30827#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {30827#true} is VALID [2020-07-11 02:29:20,451 INFO L280 TraceCheckUtils]: 4: Hoare triple {30827#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {30827#true} is VALID [2020-07-11 02:29:20,451 INFO L280 TraceCheckUtils]: 5: Hoare triple {30827#true} havoc #t~ret0.base, #t~ret0.offset; {30827#true} is VALID [2020-07-11 02:29:20,451 INFO L280 TraceCheckUtils]: 6: Hoare triple {30827#true} assume true; {30827#true} is VALID [2020-07-11 02:29:20,453 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {30827#true} {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} #201#return; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,454 INFO L263 TraceCheckUtils]: 0: Hoare triple {30827#true} call ULTIMATE.init(); {30853#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:29:20,454 INFO L280 TraceCheckUtils]: 1: Hoare triple {30853#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {30827#true} is VALID [2020-07-11 02:29:20,454 INFO L280 TraceCheckUtils]: 2: Hoare triple {30827#true} #valid := #valid[0 := 0]; {30827#true} is VALID [2020-07-11 02:29:20,454 INFO L280 TraceCheckUtils]: 3: Hoare triple {30827#true} assume 0 < #StackHeapBarrier; {30827#true} is VALID [2020-07-11 02:29:20,454 INFO L280 TraceCheckUtils]: 4: Hoare triple {30827#true} assume true; {30827#true} is VALID [2020-07-11 02:29:20,454 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {30827#true} {30827#true} #205#return; {30827#true} is VALID [2020-07-11 02:29:20,455 INFO L263 TraceCheckUtils]: 6: Hoare triple {30827#true} call #t~ret21 := main(); {30827#true} is VALID [2020-07-11 02:29:20,455 INFO L280 TraceCheckUtils]: 7: Hoare triple {30827#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {30827#true} is VALID [2020-07-11 02:29:20,455 INFO L280 TraceCheckUtils]: 8: Hoare triple {30827#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {30827#true} is VALID [2020-07-11 02:29:20,455 INFO L263 TraceCheckUtils]: 9: Hoare triple {30827#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {30827#true} is VALID [2020-07-11 02:29:20,455 INFO L280 TraceCheckUtils]: 10: Hoare triple {30827#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {30827#true} is VALID [2020-07-11 02:29:20,456 INFO L280 TraceCheckUtils]: 11: Hoare triple {30827#true} ~start~0 := 0; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,456 INFO L280 TraceCheckUtils]: 12: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} ~i~0 := -1; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,457 INFO L280 TraceCheckUtils]: 13: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} ~j~0 := -1; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,458 INFO L280 TraceCheckUtils]: 14: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,458 INFO L280 TraceCheckUtils]: 15: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} assume !(~str.base == 0 && ~str.offset == 0); {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,459 INFO L280 TraceCheckUtils]: 16: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} #t~post2 := ~i~0; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,459 INFO L280 TraceCheckUtils]: 17: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} ~i~0 := 1 + #t~post2; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,460 INFO L280 TraceCheckUtils]: 18: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} havoc #t~post2; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,460 INFO L280 TraceCheckUtils]: 19: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,461 INFO L280 TraceCheckUtils]: 20: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} #t~switch4 := 0 == #t~mem3; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,462 INFO L280 TraceCheckUtils]: 21: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} assume #t~switch4; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,462 INFO L280 TraceCheckUtils]: 22: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,463 INFO L280 TraceCheckUtils]: 23: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,463 INFO L280 TraceCheckUtils]: 24: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} assume #t~short7; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,464 INFO L280 TraceCheckUtils]: 25: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} assume !!#t~short7; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,464 INFO L280 TraceCheckUtils]: 26: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} havoc #t~mem5; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,465 INFO L280 TraceCheckUtils]: 27: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} havoc #t~short7; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,465 INFO L280 TraceCheckUtils]: 28: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} havoc #t~mem6; {30834#(= 0 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,466 INFO L280 TraceCheckUtils]: 29: Hoare triple {30834#(= 0 parse_expression_list_~start~0)} #t~post8 := ~start~0; {30835#(= 0 |parse_expression_list_#t~post8|)} is VALID [2020-07-11 02:29:20,467 INFO L280 TraceCheckUtils]: 30: Hoare triple {30835#(= 0 |parse_expression_list_#t~post8|)} ~start~0 := 1 + #t~post8; {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,467 INFO L280 TraceCheckUtils]: 31: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} havoc #t~post8; {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,468 INFO L280 TraceCheckUtils]: 32: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,468 INFO L280 TraceCheckUtils]: 33: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,469 INFO L280 TraceCheckUtils]: 34: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} assume #t~short7; {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,469 INFO L280 TraceCheckUtils]: 35: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} assume !!#t~short7; {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,470 INFO L280 TraceCheckUtils]: 36: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} havoc #t~mem5; {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,470 INFO L280 TraceCheckUtils]: 37: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} havoc #t~short7; {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,471 INFO L280 TraceCheckUtils]: 38: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} havoc #t~mem6; {30836#(<= 1 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,471 INFO L280 TraceCheckUtils]: 39: Hoare triple {30836#(<= 1 parse_expression_list_~start~0)} #t~post8 := ~start~0; {30837#(<= 1 |parse_expression_list_#t~post8|)} is VALID [2020-07-11 02:29:20,472 INFO L280 TraceCheckUtils]: 40: Hoare triple {30837#(<= 1 |parse_expression_list_#t~post8|)} ~start~0 := 1 + #t~post8; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,473 INFO L280 TraceCheckUtils]: 41: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} havoc #t~post8; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,473 INFO L280 TraceCheckUtils]: 42: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,474 INFO L280 TraceCheckUtils]: 43: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} #t~short7 := 32 == #t~mem5; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,475 INFO L280 TraceCheckUtils]: 44: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} assume !#t~short7; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,475 INFO L280 TraceCheckUtils]: 45: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,476 INFO L280 TraceCheckUtils]: 46: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} #t~short7 := 9 == #t~mem6; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,476 INFO L280 TraceCheckUtils]: 47: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} assume !#t~short7; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,477 INFO L280 TraceCheckUtils]: 48: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} havoc #t~mem5; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,478 INFO L280 TraceCheckUtils]: 49: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} havoc #t~short7; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,478 INFO L280 TraceCheckUtils]: 50: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} havoc #t~mem6; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,479 INFO L280 TraceCheckUtils]: 51: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,479 INFO L280 TraceCheckUtils]: 52: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} assume 34 == #t~mem9; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,480 INFO L280 TraceCheckUtils]: 53: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} havoc #t~mem9; {30838#(<= 2 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,480 INFO L280 TraceCheckUtils]: 54: Hoare triple {30838#(<= 2 parse_expression_list_~start~0)} #t~post10 := ~start~0; {30839#(<= 2 |parse_expression_list_#t~post10|)} is VALID [2020-07-11 02:29:20,481 INFO L280 TraceCheckUtils]: 55: Hoare triple {30839#(<= 2 |parse_expression_list_#t~post10|)} ~start~0 := 1 + #t~post10; {30840#(<= 3 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,482 INFO L280 TraceCheckUtils]: 56: Hoare triple {30840#(<= 3 parse_expression_list_~start~0)} havoc #t~post10; {30840#(<= 3 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,482 INFO L280 TraceCheckUtils]: 57: Hoare triple {30840#(<= 3 parse_expression_list_~start~0)} ~j~0 := ~i~0 - 1; {30840#(<= 3 parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,483 INFO L280 TraceCheckUtils]: 58: Hoare triple {30840#(<= 3 parse_expression_list_~start~0)} #t~short14 := 0 < ~j~0; {30841#(or |parse_expression_list_#t~short14| (<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0))} is VALID [2020-07-11 02:29:20,484 INFO L280 TraceCheckUtils]: 59: Hoare triple {30841#(or |parse_expression_list_#t~short14| (<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0))} assume !#t~short14; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,485 INFO L280 TraceCheckUtils]: 60: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} assume !#t~short14; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,485 INFO L280 TraceCheckUtils]: 61: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~mem12; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,486 INFO L280 TraceCheckUtils]: 62: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~mem11; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,486 INFO L280 TraceCheckUtils]: 63: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~short13; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,487 INFO L280 TraceCheckUtils]: 64: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~short14; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,487 INFO L280 TraceCheckUtils]: 65: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} #t~short17 := 0 < ~j~0; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,488 INFO L280 TraceCheckUtils]: 66: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} assume !#t~short17; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,488 INFO L280 TraceCheckUtils]: 67: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} assume !#t~short17; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,489 INFO L280 TraceCheckUtils]: 68: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~mem16; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,489 INFO L280 TraceCheckUtils]: 69: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~short17; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,490 INFO L280 TraceCheckUtils]: 70: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} assume ~start~0 <= ~j~0; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,490 INFO L263 TraceCheckUtils]: 71: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} 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)); {30827#true} is VALID [2020-07-11 02:29:20,490 INFO L280 TraceCheckUtils]: 72: Hoare triple {30827#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {30827#true} is VALID [2020-07-11 02:29:20,490 INFO L280 TraceCheckUtils]: 73: Hoare triple {30827#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {30827#true} is VALID [2020-07-11 02:29:20,491 INFO L280 TraceCheckUtils]: 74: Hoare triple {30827#true} ~n := #in~n; {30827#true} is VALID [2020-07-11 02:29:20,491 INFO L280 TraceCheckUtils]: 75: Hoare triple {30827#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {30827#true} is VALID [2020-07-11 02:29:20,491 INFO L280 TraceCheckUtils]: 76: Hoare triple {30827#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {30827#true} is VALID [2020-07-11 02:29:20,491 INFO L280 TraceCheckUtils]: 77: Hoare triple {30827#true} havoc #t~ret0.base, #t~ret0.offset; {30827#true} is VALID [2020-07-11 02:29:20,491 INFO L280 TraceCheckUtils]: 78: Hoare triple {30827#true} assume true; {30827#true} is VALID [2020-07-11 02:29:20,493 INFO L275 TraceCheckUtils]: 79: Hoare quadruple {30827#true} {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} #201#return; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,493 INFO L280 TraceCheckUtils]: 80: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} havoc #t~ret19.base, #t~ret19.offset; {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} is VALID [2020-07-11 02:29:20,494 INFO L263 TraceCheckUtils]: 81: Hoare triple {30842#(<= (+ parse_expression_list_~j~0 3) parse_expression_list_~start~0)} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {30851#(not (= 0 |__VERIFIER_assert_#in~cond|))} is VALID [2020-07-11 02:29:20,495 INFO L280 TraceCheckUtils]: 82: Hoare triple {30851#(not (= 0 |__VERIFIER_assert_#in~cond|))} ~cond := #in~cond; {30852#(not (= 0 __VERIFIER_assert_~cond))} is VALID [2020-07-11 02:29:20,495 INFO L280 TraceCheckUtils]: 83: Hoare triple {30852#(not (= 0 __VERIFIER_assert_~cond))} assume 0 == ~cond; {30828#false} is VALID [2020-07-11 02:29:20,496 INFO L280 TraceCheckUtils]: 84: Hoare triple {30828#false} assume !false; {30828#false} is VALID [2020-07-11 02:29:20,503 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 13 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2020-07-11 02:29:20,503 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [592009904] [2020-07-11 02:29:20,503 INFO L220 FreeRefinementEngine]: Constructing automaton from 0 perfect and 1 imperfect interpolant sequences. [2020-07-11 02:29:20,503 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14] total 14 [2020-07-11 02:29:20,504 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [847168943] [2020-07-11 02:29:20,504 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 85 [2020-07-11 02:29:20,504 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:29:20,505 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2020-07-11 02:29:20,594 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:20,594 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2020-07-11 02:29:20,595 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:29:20,595 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2020-07-11 02:29:20,595 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=153, Unknown=0, NotChecked=0, Total=182 [2020-07-11 02:29:20,595 INFO L87 Difference]: Start difference. First operand 390 states and 432 transitions. Second operand 14 states. [2020-07-11 02:29:24,710 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:24,710 INFO L93 Difference]: Finished difference Result 680 states and 754 transitions. [2020-07-11 02:29:24,710 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2020-07-11 02:29:24,710 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 85 [2020-07-11 02:29:24,711 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:29:24,711 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-11 02:29:24,714 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 483 transitions. [2020-07-11 02:29:24,714 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2020-07-11 02:29:24,716 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 483 transitions. [2020-07-11 02:29:24,716 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 21 states and 483 transitions. [2020-07-11 02:29:25,259 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 483 edges. 483 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:25,272 INFO L225 Difference]: With dead ends: 680 [2020-07-11 02:29:25,272 INFO L226 Difference]: Without dead ends: 428 [2020-07-11 02:29:25,273 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 109 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=99, Invalid=603, Unknown=0, NotChecked=0, Total=702 [2020-07-11 02:29:25,274 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 428 states. [2020-07-11 02:29:25,735 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 428 to 247. [2020-07-11 02:29:25,735 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:29:25,736 INFO L82 GeneralOperation]: Start isEquivalent. First operand 428 states. Second operand 247 states. [2020-07-11 02:29:25,736 INFO L74 IsIncluded]: Start isIncluded. First operand 428 states. Second operand 247 states. [2020-07-11 02:29:25,736 INFO L87 Difference]: Start difference. First operand 428 states. Second operand 247 states. [2020-07-11 02:29:25,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:25,748 INFO L93 Difference]: Finished difference Result 428 states and 476 transitions. [2020-07-11 02:29:25,748 INFO L276 IsEmpty]: Start isEmpty. Operand 428 states and 476 transitions. [2020-07-11 02:29:25,749 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:25,749 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:25,750 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand 428 states. [2020-07-11 02:29:25,750 INFO L87 Difference]: Start difference. First operand 247 states. Second operand 428 states. [2020-07-11 02:29:25,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:25,762 INFO L93 Difference]: Finished difference Result 428 states and 476 transitions. [2020-07-11 02:29:25,762 INFO L276 IsEmpty]: Start isEmpty. Operand 428 states and 476 transitions. [2020-07-11 02:29:25,763 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:25,763 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:25,763 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:29:25,763 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:29:25,763 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 247 states. [2020-07-11 02:29:25,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 247 states to 247 states and 270 transitions. [2020-07-11 02:29:25,768 INFO L78 Accepts]: Start accepts. Automaton has 247 states and 270 transitions. Word has length 85 [2020-07-11 02:29:25,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:29:25,768 INFO L479 AbstractCegarLoop]: Abstraction has 247 states and 270 transitions. [2020-07-11 02:29:25,768 INFO L480 AbstractCegarLoop]: Interpolant automaton has 14 states. [2020-07-11 02:29:25,768 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 247 states and 270 transitions. [2020-07-11 02:29:26,190 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 270 edges. 270 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:26,190 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 270 transitions. [2020-07-11 02:29:26,191 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 91 [2020-07-11 02:29:26,191 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:29:26,191 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 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-11 02:29:26,192 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable17 [2020-07-11 02:29:26,192 INFO L427 AbstractCegarLoop]: === Iteration 19 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:29:26,192 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:29:26,192 INFO L82 PathProgramCache]: Analyzing trace with hash 1723821108, now seen corresponding path program 2 times [2020-07-11 02:29:26,192 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:29:26,193 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1624375331] [2020-07-11 02:29:26,193 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:29:26,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:26,274 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:26,277 INFO L280 TraceCheckUtils]: 0: Hoare triple {33610#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {33592#true} is VALID [2020-07-11 02:29:26,277 INFO L280 TraceCheckUtils]: 1: Hoare triple {33592#true} #valid := #valid[0 := 0]; {33592#true} is VALID [2020-07-11 02:29:26,277 INFO L280 TraceCheckUtils]: 2: Hoare triple {33592#true} assume 0 < #StackHeapBarrier; {33592#true} is VALID [2020-07-11 02:29:26,278 INFO L280 TraceCheckUtils]: 3: Hoare triple {33592#true} assume true; {33592#true} is VALID [2020-07-11 02:29:26,278 INFO L275 TraceCheckUtils]: 4: Hoare quadruple {33592#true} {33592#true} #205#return; {33592#true} is VALID [2020-07-11 02:29:26,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2020-07-11 02:29:26,282 INFO L280 TraceCheckUtils]: 0: Hoare triple {33592#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {33592#true} is VALID [2020-07-11 02:29:26,282 INFO L280 TraceCheckUtils]: 1: Hoare triple {33592#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {33592#true} is VALID [2020-07-11 02:29:26,283 INFO L280 TraceCheckUtils]: 2: Hoare triple {33592#true} ~n := #in~n; {33592#true} is VALID [2020-07-11 02:29:26,283 INFO L280 TraceCheckUtils]: 3: Hoare triple {33592#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {33592#true} is VALID [2020-07-11 02:29:26,283 INFO L280 TraceCheckUtils]: 4: Hoare triple {33592#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {33592#true} is VALID [2020-07-11 02:29:26,283 INFO L280 TraceCheckUtils]: 5: Hoare triple {33592#true} havoc #t~ret0.base, #t~ret0.offset; {33592#true} is VALID [2020-07-11 02:29:26,284 INFO L280 TraceCheckUtils]: 6: Hoare triple {33592#true} assume true; {33592#true} is VALID [2020-07-11 02:29:26,284 INFO L275 TraceCheckUtils]: 7: Hoare quadruple {33592#true} {33593#false} #201#return; {33593#false} is VALID [2020-07-11 02:29:26,285 INFO L263 TraceCheckUtils]: 0: Hoare triple {33592#true} call ULTIMATE.init(); {33610#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} is VALID [2020-07-11 02:29:26,285 INFO L280 TraceCheckUtils]: 1: Hoare triple {33610#(and (= |#valid| |old(#valid)|) (= |#NULL.base| |old(#NULL.base)|) (= |#NULL.offset| |old(#NULL.offset)|))} #NULL.base, #NULL.offset := 0, 0; {33592#true} is VALID [2020-07-11 02:29:26,286 INFO L280 TraceCheckUtils]: 2: Hoare triple {33592#true} #valid := #valid[0 := 0]; {33592#true} is VALID [2020-07-11 02:29:26,286 INFO L280 TraceCheckUtils]: 3: Hoare triple {33592#true} assume 0 < #StackHeapBarrier; {33592#true} is VALID [2020-07-11 02:29:26,286 INFO L280 TraceCheckUtils]: 4: Hoare triple {33592#true} assume true; {33592#true} is VALID [2020-07-11 02:29:26,286 INFO L275 TraceCheckUtils]: 5: Hoare quadruple {33592#true} {33592#true} #205#return; {33592#true} is VALID [2020-07-11 02:29:26,287 INFO L263 TraceCheckUtils]: 6: Hoare triple {33592#true} call #t~ret21 := main(); {33592#true} is VALID [2020-07-11 02:29:26,287 INFO L280 TraceCheckUtils]: 7: Hoare triple {33592#true} SUMMARY for call ~#A~0.base, ~#A~0.offset := #Ultimate.allocOnStack(9); srcloc: mainENTRY {33592#true} is VALID [2020-07-11 02:29:26,287 INFO L280 TraceCheckUtils]: 8: Hoare triple {33592#true} SUMMARY for call write~int(0, ~#A~0.base, 8 + ~#A~0.offset, 1); srcloc: L74 {33592#true} is VALID [2020-07-11 02:29:26,287 INFO L263 TraceCheckUtils]: 9: Hoare triple {33592#true} call #t~ret20 := parse_expression_list(~#A~0.base, ~#A~0.offset); {33592#true} is VALID [2020-07-11 02:29:26,288 INFO L280 TraceCheckUtils]: 10: Hoare triple {33592#true} ~str.base, ~str.offset := #in~str.base, #in~str.offset; {33592#true} is VALID [2020-07-11 02:29:26,288 INFO L280 TraceCheckUtils]: 11: Hoare triple {33592#true} ~start~0 := 0; {33592#true} is VALID [2020-07-11 02:29:26,288 INFO L280 TraceCheckUtils]: 12: Hoare triple {33592#true} ~i~0 := -1; {33592#true} is VALID [2020-07-11 02:29:26,288 INFO L280 TraceCheckUtils]: 13: Hoare triple {33592#true} ~j~0 := -1; {33592#true} is VALID [2020-07-11 02:29:26,289 INFO L280 TraceCheckUtils]: 14: Hoare triple {33592#true} SUMMARY for call ~#str2~0.base, ~#str2~0.offset := #Ultimate.allocOnStack(2); srcloc: L49 {33592#true} is VALID [2020-07-11 02:29:26,289 INFO L280 TraceCheckUtils]: 15: Hoare triple {33592#true} assume !(~str.base == 0 && ~str.offset == 0); {33592#true} is VALID [2020-07-11 02:29:26,289 INFO L280 TraceCheckUtils]: 16: Hoare triple {33592#true} #t~post2 := ~i~0; {33592#true} is VALID [2020-07-11 02:29:26,289 INFO L280 TraceCheckUtils]: 17: Hoare triple {33592#true} ~i~0 := 1 + #t~post2; {33592#true} is VALID [2020-07-11 02:29:26,290 INFO L280 TraceCheckUtils]: 18: Hoare triple {33592#true} havoc #t~post2; {33592#true} is VALID [2020-07-11 02:29:26,290 INFO L280 TraceCheckUtils]: 19: Hoare triple {33592#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {33592#true} is VALID [2020-07-11 02:29:26,290 INFO L280 TraceCheckUtils]: 20: Hoare triple {33592#true} #t~switch4 := 0 == #t~mem3; {33592#true} is VALID [2020-07-11 02:29:26,290 INFO L280 TraceCheckUtils]: 21: Hoare triple {33592#true} assume !#t~switch4; {33592#true} is VALID [2020-07-11 02:29:26,291 INFO L280 TraceCheckUtils]: 22: Hoare triple {33592#true} havoc #t~mem3; {33592#true} is VALID [2020-07-11 02:29:26,291 INFO L280 TraceCheckUtils]: 23: Hoare triple {33592#true} havoc #t~switch4; {33592#true} is VALID [2020-07-11 02:29:26,291 INFO L280 TraceCheckUtils]: 24: Hoare triple {33592#true} SUMMARY for call #t~mem1 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L51-1 {33592#true} is VALID [2020-07-11 02:29:26,292 INFO L280 TraceCheckUtils]: 25: Hoare triple {33592#true} assume !!(0 != #t~mem1); {33592#true} is VALID [2020-07-11 02:29:26,292 INFO L280 TraceCheckUtils]: 26: Hoare triple {33592#true} havoc #t~mem1; {33592#true} is VALID [2020-07-11 02:29:26,292 INFO L280 TraceCheckUtils]: 27: Hoare triple {33592#true} #t~post2 := ~i~0; {33592#true} is VALID [2020-07-11 02:29:26,292 INFO L280 TraceCheckUtils]: 28: Hoare triple {33592#true} ~i~0 := 1 + #t~post2; {33592#true} is VALID [2020-07-11 02:29:26,293 INFO L280 TraceCheckUtils]: 29: Hoare triple {33592#true} havoc #t~post2; {33592#true} is VALID [2020-07-11 02:29:26,293 INFO L280 TraceCheckUtils]: 30: Hoare triple {33592#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {33592#true} is VALID [2020-07-11 02:29:26,293 INFO L280 TraceCheckUtils]: 31: Hoare triple {33592#true} #t~switch4 := 0 == #t~mem3; {33592#true} is VALID [2020-07-11 02:29:26,293 INFO L280 TraceCheckUtils]: 32: Hoare triple {33592#true} assume !#t~switch4; {33592#true} is VALID [2020-07-11 02:29:26,294 INFO L280 TraceCheckUtils]: 33: Hoare triple {33592#true} havoc #t~mem3; {33592#true} is VALID [2020-07-11 02:29:26,294 INFO L280 TraceCheckUtils]: 34: Hoare triple {33592#true} havoc #t~switch4; {33592#true} is VALID [2020-07-11 02:29:26,294 INFO L280 TraceCheckUtils]: 35: Hoare triple {33592#true} SUMMARY for call #t~mem1 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L51-1 {33592#true} is VALID [2020-07-11 02:29:26,294 INFO L280 TraceCheckUtils]: 36: Hoare triple {33592#true} assume !!(0 != #t~mem1); {33592#true} is VALID [2020-07-11 02:29:26,294 INFO L280 TraceCheckUtils]: 37: Hoare triple {33592#true} havoc #t~mem1; {33592#true} is VALID [2020-07-11 02:29:26,294 INFO L280 TraceCheckUtils]: 38: Hoare triple {33592#true} #t~post2 := ~i~0; {33592#true} is VALID [2020-07-11 02:29:26,295 INFO L280 TraceCheckUtils]: 39: Hoare triple {33592#true} ~i~0 := 1 + #t~post2; {33592#true} is VALID [2020-07-11 02:29:26,295 INFO L280 TraceCheckUtils]: 40: Hoare triple {33592#true} havoc #t~post2; {33592#true} is VALID [2020-07-11 02:29:26,295 INFO L280 TraceCheckUtils]: 41: Hoare triple {33592#true} SUMMARY for call #t~mem3 := read~int(~str.base, ~str.offset + ~i~0, 1); srcloc: L53 {33592#true} is VALID [2020-07-11 02:29:26,295 INFO L280 TraceCheckUtils]: 42: Hoare triple {33592#true} #t~switch4 := 0 == #t~mem3; {33592#true} is VALID [2020-07-11 02:29:26,295 INFO L280 TraceCheckUtils]: 43: Hoare triple {33592#true} assume #t~switch4; {33592#true} is VALID [2020-07-11 02:29:26,296 INFO L280 TraceCheckUtils]: 44: Hoare triple {33592#true} SUMMARY for call #t~mem5 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-17 {33592#true} is VALID [2020-07-11 02:29:26,296 INFO L280 TraceCheckUtils]: 45: Hoare triple {33592#true} #t~short7 := 32 == #t~mem5; {33592#true} is VALID [2020-07-11 02:29:26,296 INFO L280 TraceCheckUtils]: 46: Hoare triple {33592#true} assume !#t~short7; {33592#true} is VALID [2020-07-11 02:29:26,296 INFO L280 TraceCheckUtils]: 47: Hoare triple {33592#true} SUMMARY for call #t~mem6 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-4 {33592#true} is VALID [2020-07-11 02:29:26,296 INFO L280 TraceCheckUtils]: 48: Hoare triple {33592#true} #t~short7 := 9 == #t~mem6; {33592#true} is VALID [2020-07-11 02:29:26,296 INFO L280 TraceCheckUtils]: 49: Hoare triple {33592#true} assume !#t~short7; {33592#true} is VALID [2020-07-11 02:29:26,297 INFO L280 TraceCheckUtils]: 50: Hoare triple {33592#true} havoc #t~mem5; {33592#true} is VALID [2020-07-11 02:29:26,297 INFO L280 TraceCheckUtils]: 51: Hoare triple {33592#true} havoc #t~short7; {33592#true} is VALID [2020-07-11 02:29:26,297 INFO L280 TraceCheckUtils]: 52: Hoare triple {33592#true} havoc #t~mem6; {33592#true} is VALID [2020-07-11 02:29:26,297 INFO L280 TraceCheckUtils]: 53: Hoare triple {33592#true} SUMMARY for call #t~mem9 := read~int(~str.base, ~str.offset + ~start~0, 1); srcloc: L55-18 {33592#true} is VALID [2020-07-11 02:29:26,297 INFO L280 TraceCheckUtils]: 54: Hoare triple {33592#true} assume !(34 == #t~mem9); {33592#true} is VALID [2020-07-11 02:29:26,297 INFO L280 TraceCheckUtils]: 55: Hoare triple {33592#true} havoc #t~mem9; {33592#true} is VALID [2020-07-11 02:29:26,298 INFO L280 TraceCheckUtils]: 56: Hoare triple {33592#true} ~j~0 := ~i~0 - 1; {33592#true} is VALID [2020-07-11 02:29:26,298 INFO L280 TraceCheckUtils]: 57: Hoare triple {33592#true} #t~short14 := 0 < ~j~0; {33599#(or (< 0 parse_expression_list_~j~0) (not |parse_expression_list_#t~short14|))} is VALID [2020-07-11 02:29:26,299 INFO L280 TraceCheckUtils]: 58: Hoare triple {33599#(or (< 0 parse_expression_list_~j~0) (not |parse_expression_list_#t~short14|))} assume #t~short14; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,299 INFO L280 TraceCheckUtils]: 59: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} SUMMARY for call #t~mem11 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L58-2 {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,300 INFO L280 TraceCheckUtils]: 60: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} #t~short13 := 32 == #t~mem11; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,301 INFO L280 TraceCheckUtils]: 61: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} assume !#t~short13; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,302 INFO L280 TraceCheckUtils]: 62: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} SUMMARY for call #t~mem12 := read~int(~str.base, ~str.offset + ~j~0, 1); srcloc: L58-6 {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,302 INFO L280 TraceCheckUtils]: 63: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} #t~short13 := 9 == #t~mem12; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,303 INFO L280 TraceCheckUtils]: 64: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} #t~short14 := #t~short13; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,303 INFO L280 TraceCheckUtils]: 65: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} assume !#t~short14; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,304 INFO L280 TraceCheckUtils]: 66: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} havoc #t~mem12; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,305 INFO L280 TraceCheckUtils]: 67: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} havoc #t~mem11; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,306 INFO L280 TraceCheckUtils]: 68: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} havoc #t~short13; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,307 INFO L280 TraceCheckUtils]: 69: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} havoc #t~short14; {33600#(< 0 parse_expression_list_~j~0)} is VALID [2020-07-11 02:29:26,307 INFO L280 TraceCheckUtils]: 70: Hoare triple {33600#(< 0 parse_expression_list_~j~0)} #t~short17 := 0 < ~j~0; {33601#|parse_expression_list_#t~short17|} is VALID [2020-07-11 02:29:26,308 INFO L280 TraceCheckUtils]: 71: Hoare triple {33601#|parse_expression_list_#t~short17|} assume !#t~short17; {33593#false} is VALID [2020-07-11 02:29:26,308 INFO L280 TraceCheckUtils]: 72: Hoare triple {33593#false} assume !#t~short17; {33593#false} is VALID [2020-07-11 02:29:26,309 INFO L280 TraceCheckUtils]: 73: Hoare triple {33593#false} havoc #t~mem16; {33593#false} is VALID [2020-07-11 02:29:26,309 INFO L280 TraceCheckUtils]: 74: Hoare triple {33593#false} havoc #t~short17; {33593#false} is VALID [2020-07-11 02:29:26,309 INFO L280 TraceCheckUtils]: 75: Hoare triple {33593#false} assume ~start~0 <= ~j~0; {33593#false} is VALID [2020-07-11 02:29:26,309 INFO L263 TraceCheckUtils]: 76: Hoare triple {33593#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)); {33592#true} is VALID [2020-07-11 02:29:26,310 INFO L280 TraceCheckUtils]: 77: Hoare triple {33592#true} ~dest.base, ~dest.offset := #in~dest.base, #in~dest.offset; {33592#true} is VALID [2020-07-11 02:29:26,310 INFO L280 TraceCheckUtils]: 78: Hoare triple {33592#true} ~src.base, ~src.offset := #in~src.base, #in~src.offset; {33592#true} is VALID [2020-07-11 02:29:26,310 INFO L280 TraceCheckUtils]: 79: Hoare triple {33592#true} ~n := #in~n; {33592#true} is VALID [2020-07-11 02:29:26,310 INFO L280 TraceCheckUtils]: 80: Hoare triple {33592#true} SUMMARY for call #t~ret0.base, #t~ret0.offset := strncpy(~dest.base, ~dest.offset, ~src.base, ~src.offset, ~n); srcloc: L30-2 {33592#true} is VALID [2020-07-11 02:29:26,311 INFO L280 TraceCheckUtils]: 81: Hoare triple {33592#true} #res.base, #res.offset := #t~ret0.base, #t~ret0.offset; {33592#true} is VALID [2020-07-11 02:29:26,311 INFO L280 TraceCheckUtils]: 82: Hoare triple {33592#true} havoc #t~ret0.base, #t~ret0.offset; {33592#true} is VALID [2020-07-11 02:29:26,311 INFO L280 TraceCheckUtils]: 83: Hoare triple {33592#true} assume true; {33592#true} is VALID [2020-07-11 02:29:26,311 INFO L275 TraceCheckUtils]: 84: Hoare quadruple {33592#true} {33593#false} #201#return; {33593#false} is VALID [2020-07-11 02:29:26,312 INFO L280 TraceCheckUtils]: 85: Hoare triple {33593#false} havoc #t~ret19.base, #t~ret19.offset; {33593#false} is VALID [2020-07-11 02:29:26,312 INFO L263 TraceCheckUtils]: 86: Hoare triple {33593#false} call __VERIFIER_assert((if 1 + (~j~0 - ~start~0) < 2 then 1 else 0)); {33593#false} is VALID [2020-07-11 02:29:26,312 INFO L280 TraceCheckUtils]: 87: Hoare triple {33593#false} ~cond := #in~cond; {33593#false} is VALID [2020-07-11 02:29:26,312 INFO L280 TraceCheckUtils]: 88: Hoare triple {33593#false} assume 0 == ~cond; {33593#false} is VALID [2020-07-11 02:29:26,313 INFO L280 TraceCheckUtils]: 89: Hoare triple {33593#false} assume !false; {33593#false} is VALID [2020-07-11 02:29:26,321 INFO L134 CoverageAnalysis]: Checked inductivity of 23 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 23 trivial. 0 not checked. [2020-07-11 02:29:26,321 INFO L354 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModulePreferences [1624375331] [2020-07-11 02:29:26,321 INFO L220 FreeRefinementEngine]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2020-07-11 02:29:26,322 INFO L233 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2020-07-11 02:29:26,322 INFO L156 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1340073662] [2020-07-11 02:29:26,323 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 90 [2020-07-11 02:29:26,324 INFO L84 Accepts]: Finished accepts. word is accepted. [2020-07-11 02:29:26,324 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states. [2020-07-11 02:29:26,409 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:26,410 INFO L459 AbstractCegarLoop]: Interpolant automaton has 6 states [2020-07-11 02:29:26,410 INFO L143 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FIXED_PREFERENCES [2020-07-11 02:29:26,410 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2020-07-11 02:29:26,410 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2020-07-11 02:29:26,411 INFO L87 Difference]: Start difference. First operand 247 states and 270 transitions. Second operand 6 states. [2020-07-11 02:29:27,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:27,766 INFO L93 Difference]: Finished difference Result 387 states and 425 transitions. [2020-07-11 02:29:27,766 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2020-07-11 02:29:27,767 INFO L78 Accepts]: Start accepts. Automaton has 6 states. Word has length 90 [2020-07-11 02:29:27,767 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2020-07-11 02:29:27,767 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-11 02:29:27,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 262 transitions. [2020-07-11 02:29:27,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 6 states. [2020-07-11 02:29:27,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 262 transitions. [2020-07-11 02:29:27,770 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 262 transitions. [2020-07-11 02:29:28,056 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 262 edges. 262 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:28,061 INFO L225 Difference]: With dead ends: 387 [2020-07-11 02:29:28,061 INFO L226 Difference]: Without dead ends: 290 [2020-07-11 02:29:28,061 INFO L675 BasicCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=15, Invalid=27, Unknown=0, NotChecked=0, Total=42 [2020-07-11 02:29:28,062 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 290 states. [2020-07-11 02:29:28,621 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 290 to 247. [2020-07-11 02:29:28,621 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2020-07-11 02:29:28,621 INFO L82 GeneralOperation]: Start isEquivalent. First operand 290 states. Second operand 247 states. [2020-07-11 02:29:28,621 INFO L74 IsIncluded]: Start isIncluded. First operand 290 states. Second operand 247 states. [2020-07-11 02:29:28,622 INFO L87 Difference]: Start difference. First operand 290 states. Second operand 247 states. [2020-07-11 02:29:28,628 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:28,628 INFO L93 Difference]: Finished difference Result 290 states and 318 transitions. [2020-07-11 02:29:28,628 INFO L276 IsEmpty]: Start isEmpty. Operand 290 states and 318 transitions. [2020-07-11 02:29:28,629 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:28,629 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:28,629 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand 290 states. [2020-07-11 02:29:28,629 INFO L87 Difference]: Start difference. First operand 247 states. Second operand 290 states. [2020-07-11 02:29:28,635 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2020-07-11 02:29:28,635 INFO L93 Difference]: Finished difference Result 290 states and 318 transitions. [2020-07-11 02:29:28,635 INFO L276 IsEmpty]: Start isEmpty. Operand 290 states and 318 transitions. [2020-07-11 02:29:28,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2020-07-11 02:29:28,636 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2020-07-11 02:29:28,636 INFO L88 GeneralOperation]: Finished isEquivalent. [2020-07-11 02:29:28,636 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2020-07-11 02:29:28,636 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 247 states. [2020-07-11 02:29:28,641 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 247 states to 247 states and 269 transitions. [2020-07-11 02:29:28,641 INFO L78 Accepts]: Start accepts. Automaton has 247 states and 269 transitions. Word has length 90 [2020-07-11 02:29:28,641 INFO L84 Accepts]: Finished accepts. word is rejected. [2020-07-11 02:29:28,641 INFO L479 AbstractCegarLoop]: Abstraction has 247 states and 269 transitions. [2020-07-11 02:29:28,641 INFO L480 AbstractCegarLoop]: Interpolant automaton has 6 states. [2020-07-11 02:29:28,642 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 247 states and 269 transitions. [2020-07-11 02:29:29,076 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 269 edges. 269 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2020-07-11 02:29:29,077 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 269 transitions. [2020-07-11 02:29:29,078 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 93 [2020-07-11 02:29:29,078 INFO L414 BasicCegarLoop]: Found error trace [2020-07-11 02:29:29,078 INFO L422 BasicCegarLoop]: trace histogram [3, 3, 3, 3, 3, 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, 1, 1] [2020-07-11 02:29:29,078 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18 [2020-07-11 02:29:29,078 INFO L427 AbstractCegarLoop]: === Iteration 20 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2020-07-11 02:29:29,079 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2020-07-11 02:29:29,079 INFO L82 PathProgramCache]: Analyzing trace with hash 888855281, now seen corresponding path program 1 times [2020-07-11 02:29:29,079 INFO L163 FreeRefinementEngine]: Executing refinement strategy FIXED_PREFERENCES [2020-07-11 02:29:29,079 INFO L354 FreeRefinementEngine]: Using trace check IpTcStrategyModulePreferences [1731276108] [2020-07-11 02:29:29,079 INFO L94 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2020-07-11 02:29:29,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-11 02:29:29,122 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2020-07-11 02:29:29,175 INFO L174 FreeRefinementEngine]: Strategy FIXED_PREFERENCES found a feasible trace [2020-07-11 02:29:29,175 INFO L520 BasicCegarLoop]: Counterexample might be feasible [2020-07-11 02:29:29,176 WARN L516 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19 [2020-07-11 02:29:29,220 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,228 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,229 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,230 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,230 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,231 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,231 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,231 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,232 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,232 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,232 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,233 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,233 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,234 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,234 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,238 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,238 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,238 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,239 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,240 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,241 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,241 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,241 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,242 WARN L1295 BoogieBacktranslator]: Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement [2020-07-11 02:29:29,262 WARN L170 areAnnotationChecker]: parse_expression_listENTRY has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: r_strncpyENTRY has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-11 02:29:29,263 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L74 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L3 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L3 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L-1-1 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L30-1 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L75 has no Hoare annotation [2020-07-11 02:29:29,264 WARN L170 areAnnotationChecker]: L75 has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: L4 has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: L4 has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: L3-2 has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: L48-2 has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: L30-2 has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: L76 has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2020-07-11 02:29:29,265 WARN L170 areAnnotationChecker]: L49 has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: L30-3 has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: L76-1 has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: L62-1 has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: L30-4 has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: L77 has no Hoare annotation [2020-07-11 02:29:29,266 WARN L170 areAnnotationChecker]: L63 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: L50 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: L51-3 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: L51-3 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: r_strncpyFINAL has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: L74-1 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: L53-2 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: L49-2 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: L52 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: L51-4 has no Hoare annotation [2020-07-11 02:29:29,267 WARN L170 areAnnotationChecker]: r_strncpyEXIT has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: L74-2 has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: L53-3 has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: L49-3 has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: L52-1 has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: L49-6 has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: L61-1 has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: L51-1 has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: parse_expression_listFINAL has no Hoare annotation [2020-07-11 02:29:29,268 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L49-7 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L62 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L62 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L69 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L69 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: parse_expression_listEXIT has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L53-1 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L69-1 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L69-2 has no Hoare annotation [2020-07-11 02:29:29,269 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L54 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L55-17 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L55-17 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L55-18 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L55-1 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L55-2 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L55-2 has no Hoare annotation [2020-07-11 02:29:29,270 WARN L170 areAnnotationChecker]: L56-1 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L56-6 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L55-6 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L55-6 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L55-4 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L56-2 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L56-7 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L55-7 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L55-11 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L55-5 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L56-3 has no Hoare annotation [2020-07-11 02:29:29,271 WARN L170 areAnnotationChecker]: L58-23 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L58-23 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L55-8 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L55-12 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L56-4 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L58-24 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L58-1 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L58-1 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L55-9 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L55-13 has no Hoare annotation [2020-07-11 02:29:29,272 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L58-2 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L58-10 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L58-10 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L55-14 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L59-1 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L59-4 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L59-4 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L58-3 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L58-11 has no Hoare annotation [2020-07-11 02:29:29,273 WARN L170 areAnnotationChecker]: L58-16 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L55-15 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L59-2 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L59-5 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L59-11 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L58-4 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L58-4 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L58-12 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L58-17 has no Hoare annotation [2020-07-11 02:29:29,274 WARN L170 areAnnotationChecker]: L55-16 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L59-6 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L59-12 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L58-8 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L58-6 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L58-13 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L58-18 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L59-7 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L59-13 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L59-13 has no Hoare annotation [2020-07-11 02:29:29,275 WARN L170 areAnnotationChecker]: L58-7 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L58-14 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L58-19 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L59-8 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L61 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L61 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L65 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L58-20 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L59-9 has no Hoare annotation [2020-07-11 02:29:29,276 WARN L170 areAnnotationChecker]: L49-4 has no Hoare annotation [2020-07-11 02:29:29,277 WARN L170 areAnnotationChecker]: L58-21 has no Hoare annotation [2020-07-11 02:29:29,277 WARN L170 areAnnotationChecker]: L49-5 has no Hoare annotation [2020-07-11 02:29:29,277 WARN L170 areAnnotationChecker]: L58-22 has no Hoare annotation [2020-07-11 02:29:29,277 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2020-07-11 02:29:29,281 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 11.07 02:29:29 BoogieIcfgContainer [2020-07-11 02:29:29,281 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2020-07-11 02:29:29,283 INFO L168 Benchmark]: Toolchain (without parser) took 62229.97 ms. Allocated memory was 143.1 MB in the beginning and 549.5 MB in the end (delta: 406.3 MB). Free memory was 99.8 MB in the beginning and 389.4 MB in the end (delta: -289.6 MB). Peak memory consumption was 116.7 MB. Max. memory is 7.1 GB. [2020-07-11 02:29:29,284 INFO L168 Benchmark]: CDTParser took 0.98 ms. Allocated memory is still 143.1 MB. Free memory was 118.5 MB in the beginning and 118.3 MB in the end (delta: 209.8 kB). Peak memory consumption was 209.8 kB. Max. memory is 7.1 GB. [2020-07-11 02:29:29,284 INFO L168 Benchmark]: CACSL2BoogieTranslator took 429.79 ms. Allocated memory was 143.1 MB in the beginning and 200.8 MB in the end (delta: 57.7 MB). Free memory was 99.6 MB in the beginning and 177.3 MB in the end (delta: -77.7 MB). Peak memory consumption was 20.8 MB. Max. memory is 7.1 GB. [2020-07-11 02:29:29,285 INFO L168 Benchmark]: Boogie Preprocessor took 74.79 ms. Allocated memory is still 200.8 MB. Free memory was 177.3 MB in the beginning and 175.3 MB in the end (delta: 2.0 MB). Peak memory consumption was 2.0 MB. Max. memory is 7.1 GB. [2020-07-11 02:29:29,285 INFO L168 Benchmark]: RCFGBuilder took 717.81 ms. Allocated memory is still 200.8 MB. Free memory was 174.6 MB in the beginning and 125.7 MB in the end (delta: 48.9 MB). Peak memory consumption was 48.9 MB. Max. memory is 7.1 GB. [2020-07-11 02:29:29,286 INFO L168 Benchmark]: TraceAbstraction took 61002.05 ms. Allocated memory was 200.8 MB in the beginning and 549.5 MB in the end (delta: 348.7 MB). Free memory was 125.0 MB in the beginning and 389.4 MB in the end (delta: -264.4 MB). Peak memory consumption was 84.3 MB. Max. memory is 7.1 GB. [2020-07-11 02:29:29,288 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.98 ms. Allocated memory is still 143.1 MB. Free memory was 118.5 MB in the beginning and 118.3 MB in the end (delta: 209.8 kB). Peak memory consumption was 209.8 kB. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 429.79 ms. Allocated memory was 143.1 MB in the beginning and 200.8 MB in the end (delta: 57.7 MB). Free memory was 99.6 MB in the beginning and 177.3 MB in the end (delta: -77.7 MB). Peak memory consumption was 20.8 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 74.79 ms. Allocated memory is still 200.8 MB. Free memory was 177.3 MB in the beginning and 175.3 MB in the end (delta: 2.0 MB). Peak memory consumption was 2.0 MB. Max. memory is 7.1 GB. * RCFGBuilder took 717.81 ms. Allocated memory is still 200.8 MB. Free memory was 174.6 MB in the beginning and 125.7 MB in the end (delta: 48.9 MB). Peak memory consumption was 48.9 MB. Max. memory is 7.1 GB. * TraceAbstraction took 61002.05 ms. Allocated memory was 200.8 MB in the beginning and 549.5 MB in the end (delta: 348.7 MB). Free memory was 125.0 MB in the beginning and 389.4 MB in the end (delta: -264.4 MB). Peak memory consumption was 84.3 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement - GenericResult: Unfinished Backtranslation Unfinished Backtranslation: Expression #t~switch4 has a C AST node but it is no IASTExpression: class org.eclipse.cdt.internal.core.dom.parser.c.CASTSwitchStatement * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - CounterExampleResult [Line: 4]: a call of __VERIFIER_error() is reachable a call of __VERIFIER_error() is reachable We found a FailurePath: [L74] char A [2 + 2 + 4 +1]; VAL [A={4:0}] [L75] A[2 + 2 + 4] = 0 VAL [A={4:0}] [L76] CALL parse_expression_list (A) VAL [str={4:0}] [L48] int start=0, i=-1, j=-1; VAL [i=-1, j=-1, start=0, str={4:0}, str={4:0}] [L49] char str2[2]; VAL [i=-1, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}] [L50] COND FALSE !(!str) VAL [i=-1, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}] [L52] i++ VAL [i=0, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}] [L53] str[i] VAL [i=0, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=40] [L54] case 0: VAL [i=0, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=40] [L69] EXPR str[i] VAL [i=0, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=40] [L69] COND TRUE str[i] != 0 VAL [i=0, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=40] [L52] i++ VAL [i=1, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}] [L53] str[i] VAL [i=1, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=36] [L54] case 0: VAL [i=1, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=36] [L69] EXPR str[i] VAL [i=1, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=36] [L69] COND TRUE str[i] != 0 VAL [i=1, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=36] [L52] i++ VAL [i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}] [L53] str[i] VAL [i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0] [L54] case 0: VAL [i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0] [L55] EXPR str[start] VAL [i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[start]=40] [L55] (str[start] == ' ') || (str[start] == '\t') VAL [(str[start] == ' ') || (str[start] == '\t')=0, i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[start]=40] [L55] EXPR str[start] VAL [(str[start] == ' ') || (str[start] == '\t')=0, i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[start]=40, str[start]=40] [L55] (str[start] == ' ') || (str[start] == '\t') VAL [(str[start] == ' ') || (str[start] == '\t')=0, i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[start]=40, str[start]=40] [L55] COND FALSE !((str[start] == ' ') || (str[start] == '\t')) VAL [(str[start] == ' ') || (str[start] == '\t')=0, i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[start]=40, str[start]=40] [L56] EXPR str[start] VAL [i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[start]=40] [L56] COND FALSE !(str[start] == '"') VAL [i=2, j=-1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[start]=40] [L57] j = i-1 VAL [i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0] [L58] (0 < j) && ((str[j] == ' ') || (str[j] == '\t')) VAL [(0 < j) && ((str[j] == ' ') || (str[j] == '\t'))=1, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0] [L58] EXPR str[j] VAL [(0 < j) && ((str[j] == ' ') || (str[j] == '\t'))=1, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36] [L58] EXPR (str[j] == ' ') || (str[j] == '\t') VAL [(0 < j) && ((str[j] == ' ') || (str[j] == '\t'))=1, (str[j] == ' ') || (str[j] == '\t')=0, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36] [L58] EXPR str[j] VAL [(0 < j) && ((str[j] == ' ') || (str[j] == '\t'))=1, (str[j] == ' ') || (str[j] == '\t')=0, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36, str[j]=36] [L58] EXPR (str[j] == ' ') || (str[j] == '\t') VAL [(0 < j) && ((str[j] == ' ') || (str[j] == '\t'))=1, (str[j] == ' ') || (str[j] == '\t')=0, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36, str[j]=36] [L58] (0 < j) && ((str[j] == ' ') || (str[j] == '\t')) VAL [(0 < j) && ((str[j] == ' ') || (str[j] == '\t'))=0, (str[j] == ' ') || (str[j] == '\t')=0, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36, str[j]=36] [L58] COND FALSE !((0 < j) && ((str[j] == ' ') || (str[j] == '\t'))) VAL [(0 < j) && ((str[j] == ' ') || (str[j] == '\t'))=0, (str[j] == ' ') || (str[j] == '\t')=0, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36, str[j]=36] [L59] (0 < j) && (str[j] == '"') VAL [(0 < j) && (str[j] == '"')=1, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0] [L59] EXPR str[j] VAL [(0 < j) && (str[j] == '"')=1, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36] [L59] (0 < j) && (str[j] == '"') VAL [(0 < j) && (str[j] == '"')=0, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36] [L59] COND FALSE !((0 < j) && (str[j] == '"')) VAL [(0 < j) && (str[j] == '"')=0, i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0, str[j]=36] [L60] COND TRUE start<=j VAL [i=2, j=1, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0] [L61] CALL r_strncpy(str2, str+start, j-start+1) VAL [\old(n)=2, dest={3:0}, src={4:0}] [L30] return strncpy(dest,src,n); VAL [\old(n)=2, \result={37:38}, dest={3:0}, dest={3:0}, n=2, src={4:0}, src={4:0}, strncpy(dest,src,n)={37:38}] [L61] RET r_strncpy(str2, str+start, j-start+1) VAL [i=2, j=1, r_strncpy(str2, str+start, j-start+1)={37:38}, start=0, str={4:0}, str={4:0}, str2={3:0}, str[i]=0] [L62] CALL __VERIFIER_assert(j - start + 1 < 2) VAL [\old(cond)=0] [L3] COND TRUE !(cond) VAL [\old(cond)=0, cond=0] [L4] __VERIFIER_error() VAL [\old(cond)=0, cond=0] - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 123 locations, 1 error locations. Started 1 CEGAR loops. VerificationResult: UNSAFE, OverallTime: 60.8s, OverallIterations: 20, TraceHistogramMax: 3, AutomataDifference: 42.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 2563 SDtfs, 3352 SDslu, 9407 SDs, 0 SdLazy, 6236 SolverSat, 270 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 6.7s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 322 GetRequests, 95 SyntacticMatches, 0 SemanticMatches, 227 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 616 ImplicationChecksByTransitivity, 2.9s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=390occurred 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: 6.9s AutomataMinimizationTime, 19 MinimizatonAttempts, 1532 StatesRemovedByMinimization, 15 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 3.3s InterpolantComputationTime, 1464 NumberOfCodeBlocks, 1464 NumberOfCodeBlocksAsserted, 20 NumberOfCheckSat, 1353 ConstructedInterpolants, 0 QuantifiedInterpolants, 257869 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 19 InterpolantComputations, 14 PerfectInterpolantSequences, 60/100 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 incorrect! Received shutdown request...