java -ea -Xmx8000000000 -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.3.100.v20150511-1540.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf -i ../../../trunk/examples/svcomp/loop-invgen/sendmail-close-angle_true-unreach-call_true-termination.i -------------------------------------------------------------------------------- This is Ultimate 0.1.23-18e5b2d-m [2018-11-19 00:05:07,009 INFO L170 SettingsManager]: Resetting all preferences to default values... [2018-11-19 00:05:07,011 INFO L174 SettingsManager]: Resetting UltimateCore preferences to default values [2018-11-19 00:05:07,023 INFO L177 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2018-11-19 00:05:07,023 INFO L174 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2018-11-19 00:05:07,024 INFO L174 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2018-11-19 00:05:07,025 INFO L174 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2018-11-19 00:05:07,027 INFO L174 SettingsManager]: Resetting LassoRanker preferences to default values [2018-11-19 00:05:07,029 INFO L174 SettingsManager]: Resetting Reaching Definitions preferences to default values [2018-11-19 00:05:07,030 INFO L174 SettingsManager]: Resetting SyntaxChecker preferences to default values [2018-11-19 00:05:07,031 INFO L177 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2018-11-19 00:05:07,031 INFO L174 SettingsManager]: Resetting LTL2Aut preferences to default values [2018-11-19 00:05:07,032 INFO L174 SettingsManager]: Resetting PEA to Boogie preferences to default values [2018-11-19 00:05:07,034 INFO L174 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2018-11-19 00:05:07,035 INFO L174 SettingsManager]: Resetting ChcToBoogie preferences to default values [2018-11-19 00:05:07,036 INFO L174 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2018-11-19 00:05:07,039 INFO L174 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2018-11-19 00:05:07,041 INFO L174 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2018-11-19 00:05:07,046 INFO L174 SettingsManager]: Resetting CodeCheck preferences to default values [2018-11-19 00:05:07,049 INFO L174 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2018-11-19 00:05:07,050 INFO L174 SettingsManager]: Resetting RCFGBuilder preferences to default values [2018-11-19 00:05:07,057 INFO L174 SettingsManager]: Resetting TraceAbstraction preferences to default values [2018-11-19 00:05:07,059 INFO L177 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2018-11-19 00:05:07,063 INFO L177 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2018-11-19 00:05:07,063 INFO L174 SettingsManager]: Resetting TreeAutomizer preferences to default values [2018-11-19 00:05:07,064 INFO L174 SettingsManager]: Resetting IcfgTransformer preferences to default values [2018-11-19 00:05:07,065 INFO L174 SettingsManager]: Resetting Boogie Printer preferences to default values [2018-11-19 00:05:07,068 INFO L174 SettingsManager]: Resetting ReqPrinter preferences to default values [2018-11-19 00:05:07,069 INFO L174 SettingsManager]: Resetting Witness Printer preferences to default values [2018-11-19 00:05:07,073 INFO L177 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2018-11-19 00:05:07,073 INFO L174 SettingsManager]: Resetting CDTParser preferences to default values [2018-11-19 00:05:07,074 INFO L177 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2018-11-19 00:05:07,074 INFO L177 SettingsManager]: ReqParser provides no preferences, ignoring... [2018-11-19 00:05:07,075 INFO L174 SettingsManager]: Resetting SmtParser preferences to default values [2018-11-19 00:05:07,079 INFO L174 SettingsManager]: Resetting Witness Parser preferences to default values [2018-11-19 00:05:07,079 INFO L181 SettingsManager]: Finished resetting all preferences to default values... [2018-11-19 00:05:07,080 INFO L98 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/default/automizer/svcomp-Reach-32bit-Automizer_Default.epf [2018-11-19 00:05:07,106 INFO L110 SettingsManager]: Loading preferences was successful [2018-11-19 00:05:07,106 INFO L112 SettingsManager]: Preferences different from defaults after loading the file: [2018-11-19 00:05:07,107 INFO L131 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2018-11-19 00:05:07,107 INFO L133 SettingsManager]: * to procedures, called more than once=true [2018-11-19 00:05:07,109 INFO L131 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2018-11-19 00:05:07,109 INFO L133 SettingsManager]: * Create parallel compositions if possible=false [2018-11-19 00:05:07,109 INFO L133 SettingsManager]: * Use SBE=true [2018-11-19 00:05:07,109 INFO L131 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2018-11-19 00:05:07,109 INFO L133 SettingsManager]: * sizeof long=4 [2018-11-19 00:05:07,110 INFO L133 SettingsManager]: * Overapproximate operations on floating types=true [2018-11-19 00:05:07,110 INFO L133 SettingsManager]: * sizeof POINTER=4 [2018-11-19 00:05:07,110 INFO L133 SettingsManager]: * Check division by zero=IGNORE [2018-11-19 00:05:07,110 INFO L133 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2018-11-19 00:05:07,110 INFO L133 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2018-11-19 00:05:07,111 INFO L133 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2018-11-19 00:05:07,111 INFO L133 SettingsManager]: * sizeof long double=12 [2018-11-19 00:05:07,111 INFO L133 SettingsManager]: * Check if freed pointer was valid=false [2018-11-19 00:05:07,111 INFO L133 SettingsManager]: * Use constant arrays=true [2018-11-19 00:05:07,111 INFO L133 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2018-11-19 00:05:07,111 INFO L131 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2018-11-19 00:05:07,112 INFO L133 SettingsManager]: * Size of a code block=SequenceOfStatements [2018-11-19 00:05:07,112 INFO L133 SettingsManager]: * To the following directory=./dump/ [2018-11-19 00:05:07,112 INFO L133 SettingsManager]: * SMT solver=External_DefaultMode [2018-11-19 00:05:07,112 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2018-11-19 00:05:07,112 INFO L131 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2018-11-19 00:05:07,113 INFO L133 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2018-11-19 00:05:07,113 INFO L133 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2018-11-19 00:05:07,113 INFO L133 SettingsManager]: * Trace refinement strategy=CAMEL [2018-11-19 00:05:07,113 INFO L133 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2018-11-19 00:05:07,113 INFO L133 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2018-11-19 00:05:07,113 INFO L133 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2018-11-19 00:05:07,156 INFO L81 nceAwareModelManager]: Repository-Root is: /tmp [2018-11-19 00:05:07,175 INFO L258 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2018-11-19 00:05:07,180 INFO L214 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2018-11-19 00:05:07,182 INFO L271 PluginConnector]: Initializing CDTParser... [2018-11-19 00:05:07,182 INFO L276 PluginConnector]: CDTParser initialized [2018-11-19 00:05:07,183 INFO L418 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loop-invgen/sendmail-close-angle_true-unreach-call_true-termination.i [2018-11-19 00:05:07,258 INFO L221 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d5ed518dc/8c865716b76e4490810d33ef30c7a776/FLAGe88295104 [2018-11-19 00:05:07,723 INFO L307 CDTParser]: Found 1 translation units. [2018-11-19 00:05:07,723 INFO L161 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loop-invgen/sendmail-close-angle_true-unreach-call_true-termination.i [2018-11-19 00:05:07,730 INFO L355 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d5ed518dc/8c865716b76e4490810d33ef30c7a776/FLAGe88295104 [2018-11-19 00:05:08,075 INFO L363 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d5ed518dc/8c865716b76e4490810d33ef30c7a776 [2018-11-19 00:05:08,083 INFO L296 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2018-11-19 00:05:08,084 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2018-11-19 00:05:08,085 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2018-11-19 00:05:08,085 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2018-11-19 00:05:08,089 INFO L276 PluginConnector]: CACSL2BoogieTranslator initialized [2018-11-19 00:05:08,090 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,093 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@36c5e634 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08, skipping insertion in model container [2018-11-19 00:05:08,093 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,102 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2018-11-19 00:05:08,122 INFO L176 MainTranslator]: Built tables and reachable declarations [2018-11-19 00:05:08,356 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-19 00:05:08,361 INFO L191 MainTranslator]: Completed pre-run [2018-11-19 00:05:08,387 INFO L201 PostProcessor]: Analyzing one entry point: main [2018-11-19 00:05:08,406 INFO L195 MainTranslator]: Completed translation [2018-11-19 00:05:08,406 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08 WrapperNode [2018-11-19 00:05:08,407 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2018-11-19 00:05:08,407 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2018-11-19 00:05:08,408 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2018-11-19 00:05:08,408 INFO L276 PluginConnector]: Boogie Preprocessor initialized [2018-11-19 00:05:08,423 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,423 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,429 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,430 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,436 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,444 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,445 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (1/1) ... [2018-11-19 00:05:08,447 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2018-11-19 00:05:08,448 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2018-11-19 00:05:08,448 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2018-11-19 00:05:08,448 INFO L276 PluginConnector]: RCFGBuilder initialized [2018-11-19 00:05:08,453 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (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 [2018-11-19 00:05:08,591 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2018-11-19 00:05:08,591 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2018-11-19 00:05:08,591 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2018-11-19 00:05:08,591 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2018-11-19 00:05:08,591 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_error [2018-11-19 00:05:08,592 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assume [2018-11-19 00:05:08,592 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2018-11-19 00:05:08,592 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2018-11-19 00:05:08,592 INFO L130 BoogieDeclarations]: Found specification of procedure main [2018-11-19 00:05:08,592 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2018-11-19 00:05:08,592 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2018-11-19 00:05:09,197 INFO L280 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2018-11-19 00:05:09,197 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 12:05:09 BoogieIcfgContainer [2018-11-19 00:05:09,198 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2018-11-19 00:05:09,199 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2018-11-19 00:05:09,199 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2018-11-19 00:05:09,202 INFO L276 PluginConnector]: TraceAbstraction initialized [2018-11-19 00:05:09,202 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 19.11 12:05:08" (1/3) ... [2018-11-19 00:05:09,203 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5484949a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 19.11 12:05:09, skipping insertion in model container [2018-11-19 00:05:09,203 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 19.11 12:05:08" (2/3) ... [2018-11-19 00:05:09,204 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5484949a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 19.11 12:05:09, skipping insertion in model container [2018-11-19 00:05:09,204 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 19.11 12:05:09" (3/3) ... [2018-11-19 00:05:09,206 INFO L112 eAbstractionObserver]: Analyzing ICFG sendmail-close-angle_true-unreach-call_true-termination.i [2018-11-19 00:05:09,215 INFO L136 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2018-11-19 00:05:09,223 INFO L148 ceAbstractionStarter]: Appying trace abstraction to program that has 1 error locations. [2018-11-19 00:05:09,240 INFO L257 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2018-11-19 00:05:09,272 INFO L133 ementStrategyFactory]: Using default assertion order modulation [2018-11-19 00:05:09,273 INFO L382 AbstractCegarLoop]: Interprodecural is true [2018-11-19 00:05:09,273 INFO L383 AbstractCegarLoop]: Hoare is true [2018-11-19 00:05:09,273 INFO L384 AbstractCegarLoop]: Compute interpolants for FPandBP [2018-11-19 00:05:09,273 INFO L385 AbstractCegarLoop]: Backedges is STRAIGHT_LINE [2018-11-19 00:05:09,274 INFO L386 AbstractCegarLoop]: Determinization is PREDICATE_ABSTRACTION [2018-11-19 00:05:09,274 INFO L387 AbstractCegarLoop]: Difference is false [2018-11-19 00:05:09,274 INFO L388 AbstractCegarLoop]: Minimize is MINIMIZE_SEVPA [2018-11-19 00:05:09,274 INFO L393 AbstractCegarLoop]: ======== Iteration 0==of CEGAR loop == AllErrorsAtOnce======== [2018-11-19 00:05:09,294 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states. [2018-11-19 00:05:09,300 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2018-11-19 00:05:09,300 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:09,301 INFO L375 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:09,303 INFO L423 AbstractCegarLoop]: === Iteration 1 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:09,309 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:09,310 INFO L82 PathProgramCache]: Analyzing trace with hash 1538012201, now seen corresponding path program 1 times [2018-11-19 00:05:09,312 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:09,313 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:09,363 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:09,363 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:09,363 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:09,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:09,492 INFO L256 TraceCheckUtils]: 0: Hoare triple {39#true} call ULTIMATE.init(); {39#true} is VALID [2018-11-19 00:05:09,495 INFO L273 TraceCheckUtils]: 1: Hoare triple {39#true} assume true; {39#true} is VALID [2018-11-19 00:05:09,496 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {39#true} {39#true} #71#return; {39#true} is VALID [2018-11-19 00:05:09,497 INFO L256 TraceCheckUtils]: 3: Hoare triple {39#true} call #t~ret8 := main(); {39#true} is VALID [2018-11-19 00:05:09,497 INFO L273 TraceCheckUtils]: 4: Hoare triple {39#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {39#true} is VALID [2018-11-19 00:05:09,497 INFO L273 TraceCheckUtils]: 5: Hoare triple {39#true} assume ~bufferlen~0 > 1; {39#true} is VALID [2018-11-19 00:05:09,497 INFO L273 TraceCheckUtils]: 6: Hoare triple {39#true} assume ~inlen~0 > 0; {39#true} is VALID [2018-11-19 00:05:09,498 INFO L273 TraceCheckUtils]: 7: Hoare triple {39#true} assume ~bufferlen~0 < ~inlen~0; {39#true} is VALID [2018-11-19 00:05:09,498 INFO L273 TraceCheckUtils]: 8: Hoare triple {39#true} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {39#true} is VALID [2018-11-19 00:05:09,507 INFO L273 TraceCheckUtils]: 9: Hoare triple {39#true} assume !true; {40#false} is VALID [2018-11-19 00:05:09,508 INFO L256 TraceCheckUtils]: 10: Hoare triple {40#false} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {40#false} is VALID [2018-11-19 00:05:09,508 INFO L273 TraceCheckUtils]: 11: Hoare triple {40#false} ~cond := #in~cond; {40#false} is VALID [2018-11-19 00:05:09,509 INFO L273 TraceCheckUtils]: 12: Hoare triple {40#false} assume 0 == ~cond; {40#false} is VALID [2018-11-19 00:05:09,509 INFO L273 TraceCheckUtils]: 13: Hoare triple {40#false} assume !false; {40#false} is VALID [2018-11-19 00:05:09,512 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-19 00:05:09,515 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-19 00:05:09,515 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2018-11-19 00:05:09,521 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 14 [2018-11-19 00:05:09,524 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:09,527 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states. [2018-11-19 00:05:09,619 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:09,619 INFO L459 AbstractCegarLoop]: Interpolant automaton has 2 states [2018-11-19 00:05:09,632 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2018-11-19 00:05:09,633 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-19 00:05:09,635 INFO L87 Difference]: Start difference. First operand 36 states. Second operand 2 states. [2018-11-19 00:05:09,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:09,996 INFO L93 Difference]: Finished difference Result 63 states and 94 transitions. [2018-11-19 00:05:09,996 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2018-11-19 00:05:09,996 INFO L78 Accepts]: Start accepts. Automaton has 2 states. Word has length 14 [2018-11-19 00:05:09,996 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:09,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-19 00:05:10,010 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 94 transitions. [2018-11-19 00:05:10,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 2 states. [2018-11-19 00:05:10,024 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 94 transitions. [2018-11-19 00:05:10,025 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 94 transitions. [2018-11-19 00:05:10,332 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:10,346 INFO L225 Difference]: With dead ends: 63 [2018-11-19 00:05:10,346 INFO L226 Difference]: Without dead ends: 30 [2018-11-19 00:05:10,350 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2018-11-19 00:05:10,368 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2018-11-19 00:05:10,407 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2018-11-19 00:05:10,407 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:10,408 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand 30 states. [2018-11-19 00:05:10,408 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 30 states. [2018-11-19 00:05:10,408 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 30 states. [2018-11-19 00:05:10,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:10,415 INFO L93 Difference]: Finished difference Result 30 states and 38 transitions. [2018-11-19 00:05:10,415 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 38 transitions. [2018-11-19 00:05:10,416 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:10,417 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:10,417 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand 30 states. [2018-11-19 00:05:10,417 INFO L87 Difference]: Start difference. First operand 30 states. Second operand 30 states. [2018-11-19 00:05:10,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:10,423 INFO L93 Difference]: Finished difference Result 30 states and 38 transitions. [2018-11-19 00:05:10,423 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 38 transitions. [2018-11-19 00:05:10,424 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:10,424 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:10,425 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:10,425 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:10,425 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 30 states. [2018-11-19 00:05:10,429 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 38 transitions. [2018-11-19 00:05:10,431 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 38 transitions. Word has length 14 [2018-11-19 00:05:10,431 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:10,431 INFO L480 AbstractCegarLoop]: Abstraction has 30 states and 38 transitions. [2018-11-19 00:05:10,431 INFO L481 AbstractCegarLoop]: Interpolant automaton has 2 states. [2018-11-19 00:05:10,432 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 38 transitions. [2018-11-19 00:05:10,432 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2018-11-19 00:05:10,433 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:10,433 INFO L375 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:10,433 INFO L423 AbstractCegarLoop]: === Iteration 2 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:10,434 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:10,434 INFO L82 PathProgramCache]: Analyzing trace with hash 1856547447, now seen corresponding path program 1 times [2018-11-19 00:05:10,434 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:10,434 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:10,436 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:10,437 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:10,437 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:10,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:10,883 INFO L256 TraceCheckUtils]: 0: Hoare triple {236#true} call ULTIMATE.init(); {236#true} is VALID [2018-11-19 00:05:10,884 INFO L273 TraceCheckUtils]: 1: Hoare triple {236#true} assume true; {236#true} is VALID [2018-11-19 00:05:10,884 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {236#true} {236#true} #71#return; {236#true} is VALID [2018-11-19 00:05:10,886 INFO L256 TraceCheckUtils]: 3: Hoare triple {236#true} call #t~ret8 := main(); {236#true} is VALID [2018-11-19 00:05:10,886 INFO L273 TraceCheckUtils]: 4: Hoare triple {236#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {236#true} is VALID [2018-11-19 00:05:10,887 INFO L273 TraceCheckUtils]: 5: Hoare triple {236#true} assume ~bufferlen~0 > 1; {236#true} is VALID [2018-11-19 00:05:10,887 INFO L273 TraceCheckUtils]: 6: Hoare triple {236#true} assume ~inlen~0 > 0; {236#true} is VALID [2018-11-19 00:05:10,887 INFO L273 TraceCheckUtils]: 7: Hoare triple {236#true} assume ~bufferlen~0 < ~inlen~0; {236#true} is VALID [2018-11-19 00:05:10,904 INFO L273 TraceCheckUtils]: 8: Hoare triple {236#true} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {238#(<= 0 main_~buf~0)} is VALID [2018-11-19 00:05:10,914 INFO L273 TraceCheckUtils]: 9: Hoare triple {238#(<= 0 main_~buf~0)} assume true; {238#(<= 0 main_~buf~0)} is VALID [2018-11-19 00:05:10,927 INFO L273 TraceCheckUtils]: 10: Hoare triple {238#(<= 0 main_~buf~0)} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {238#(<= 0 main_~buf~0)} is VALID [2018-11-19 00:05:10,931 INFO L273 TraceCheckUtils]: 11: Hoare triple {238#(<= 0 main_~buf~0)} assume !(0 != #t~nondet3);havoc #t~nondet3; {238#(<= 0 main_~buf~0)} is VALID [2018-11-19 00:05:10,933 INFO L256 TraceCheckUtils]: 12: Hoare triple {238#(<= 0 main_~buf~0)} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {239#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:10,934 INFO L273 TraceCheckUtils]: 13: Hoare triple {239#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {240#(= __VERIFIER_assert_~cond 1)} is VALID [2018-11-19 00:05:10,935 INFO L273 TraceCheckUtils]: 14: Hoare triple {240#(= __VERIFIER_assert_~cond 1)} assume 0 == ~cond; {237#false} is VALID [2018-11-19 00:05:10,935 INFO L273 TraceCheckUtils]: 15: Hoare triple {237#false} assume !false; {237#false} is VALID [2018-11-19 00:05:10,937 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-19 00:05:10,937 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 0 imperfect interpolant sequences. [2018-11-19 00:05:10,938 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2018-11-19 00:05:10,939 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2018-11-19 00:05:10,940 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:10,940 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states. [2018-11-19 00:05:10,983 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:10,984 INFO L459 AbstractCegarLoop]: Interpolant automaton has 5 states [2018-11-19 00:05:10,984 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2018-11-19 00:05:10,984 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2018-11-19 00:05:10,985 INFO L87 Difference]: Start difference. First operand 30 states and 38 transitions. Second operand 5 states. [2018-11-19 00:05:11,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:11,476 INFO L93 Difference]: Finished difference Result 36 states and 43 transitions. [2018-11-19 00:05:11,476 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2018-11-19 00:05:11,476 INFO L78 Accepts]: Start accepts. Automaton has 5 states. Word has length 16 [2018-11-19 00:05:11,477 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:11,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-19 00:05:11,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2018-11-19 00:05:11,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 5 states. [2018-11-19 00:05:11,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 43 transitions. [2018-11-19 00:05:11,483 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 43 transitions. [2018-11-19 00:05:11,588 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:11,592 INFO L225 Difference]: With dead ends: 36 [2018-11-19 00:05:11,592 INFO L226 Difference]: Without dead ends: 34 [2018-11-19 00:05:11,593 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 6 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2018-11-19 00:05:11,593 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2018-11-19 00:05:11,643 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2018-11-19 00:05:11,643 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:11,643 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand 34 states. [2018-11-19 00:05:11,643 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 34 states. [2018-11-19 00:05:11,644 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 34 states. [2018-11-19 00:05:11,648 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:11,648 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2018-11-19 00:05:11,648 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2018-11-19 00:05:11,649 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:11,649 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:11,650 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand 34 states. [2018-11-19 00:05:11,650 INFO L87 Difference]: Start difference. First operand 34 states. Second operand 34 states. [2018-11-19 00:05:11,653 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:11,654 INFO L93 Difference]: Finished difference Result 34 states and 41 transitions. [2018-11-19 00:05:11,654 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2018-11-19 00:05:11,655 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:11,655 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:11,655 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:11,655 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:11,656 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 34 states. [2018-11-19 00:05:11,658 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 41 transitions. [2018-11-19 00:05:11,659 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 41 transitions. Word has length 16 [2018-11-19 00:05:11,659 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:11,659 INFO L480 AbstractCegarLoop]: Abstraction has 34 states and 41 transitions. [2018-11-19 00:05:11,659 INFO L481 AbstractCegarLoop]: Interpolant automaton has 5 states. [2018-11-19 00:05:11,660 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 41 transitions. [2018-11-19 00:05:11,660 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2018-11-19 00:05:11,661 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:11,661 INFO L375 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:11,661 INFO L423 AbstractCegarLoop]: === Iteration 3 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:11,661 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:11,662 INFO L82 PathProgramCache]: Analyzing trace with hash 1929535109, now seen corresponding path program 1 times [2018-11-19 00:05:11,662 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:11,662 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:11,663 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:11,663 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:11,663 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:11,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:11,878 INFO L256 TraceCheckUtils]: 0: Hoare triple {413#true} call ULTIMATE.init(); {413#true} is VALID [2018-11-19 00:05:11,878 INFO L273 TraceCheckUtils]: 1: Hoare triple {413#true} assume true; {413#true} is VALID [2018-11-19 00:05:11,879 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {413#true} {413#true} #71#return; {413#true} is VALID [2018-11-19 00:05:11,879 INFO L256 TraceCheckUtils]: 3: Hoare triple {413#true} call #t~ret8 := main(); {413#true} is VALID [2018-11-19 00:05:11,879 INFO L273 TraceCheckUtils]: 4: Hoare triple {413#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {413#true} is VALID [2018-11-19 00:05:11,880 INFO L273 TraceCheckUtils]: 5: Hoare triple {413#true} assume ~bufferlen~0 > 1; {415#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:11,881 INFO L273 TraceCheckUtils]: 6: Hoare triple {415#(<= 2 main_~bufferlen~0)} assume ~inlen~0 > 0; {415#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:11,882 INFO L273 TraceCheckUtils]: 7: Hoare triple {415#(<= 2 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {415#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:11,882 INFO L273 TraceCheckUtils]: 8: Hoare triple {415#(<= 2 main_~bufferlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:11,883 INFO L273 TraceCheckUtils]: 9: Hoare triple {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume true; {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:11,884 INFO L273 TraceCheckUtils]: 10: Hoare triple {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:11,901 INFO L273 TraceCheckUtils]: 11: Hoare triple {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume !(0 != #t~nondet3);havoc #t~nondet3; {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:11,901 INFO L256 TraceCheckUtils]: 12: Hoare triple {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {413#true} is VALID [2018-11-19 00:05:11,910 INFO L273 TraceCheckUtils]: 13: Hoare triple {413#true} ~cond := #in~cond; {417#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:11,918 INFO L273 TraceCheckUtils]: 14: Hoare triple {417#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {418#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:11,919 INFO L273 TraceCheckUtils]: 15: Hoare triple {418#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {418#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:11,920 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {418#(not (= |__VERIFIER_assert_#in~cond| 0))} {416#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #83#return; {419#(<= (+ main_~buf~0 2) main_~bufferlen~0)} is VALID [2018-11-19 00:05:11,921 INFO L256 TraceCheckUtils]: 17: Hoare triple {419#(<= (+ main_~buf~0 2) main_~bufferlen~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {418#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:11,923 INFO L273 TraceCheckUtils]: 18: Hoare triple {418#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {420#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-19 00:05:11,923 INFO L273 TraceCheckUtils]: 19: Hoare triple {420#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {414#false} is VALID [2018-11-19 00:05:11,923 INFO L273 TraceCheckUtils]: 20: Hoare triple {414#false} assume !false; {414#false} is VALID [2018-11-19 00:05:11,926 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-19 00:05:11,926 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-19 00:05:11,926 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 2 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-19 00:05:11,946 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:11,960 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:11,985 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:11,990 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-19 00:05:12,232 INFO L256 TraceCheckUtils]: 0: Hoare triple {413#true} call ULTIMATE.init(); {413#true} is VALID [2018-11-19 00:05:12,232 INFO L273 TraceCheckUtils]: 1: Hoare triple {413#true} assume true; {413#true} is VALID [2018-11-19 00:05:12,233 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {413#true} {413#true} #71#return; {413#true} is VALID [2018-11-19 00:05:12,233 INFO L256 TraceCheckUtils]: 3: Hoare triple {413#true} call #t~ret8 := main(); {413#true} is VALID [2018-11-19 00:05:12,233 INFO L273 TraceCheckUtils]: 4: Hoare triple {413#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {413#true} is VALID [2018-11-19 00:05:12,234 INFO L273 TraceCheckUtils]: 5: Hoare triple {413#true} assume ~bufferlen~0 > 1; {415#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:12,236 INFO L273 TraceCheckUtils]: 6: Hoare triple {415#(<= 2 main_~bufferlen~0)} assume ~inlen~0 > 0; {415#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:12,237 INFO L273 TraceCheckUtils]: 7: Hoare triple {415#(<= 2 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {415#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:12,238 INFO L273 TraceCheckUtils]: 8: Hoare triple {415#(<= 2 main_~bufferlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:12,238 INFO L273 TraceCheckUtils]: 9: Hoare triple {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} assume true; {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:12,239 INFO L273 TraceCheckUtils]: 10: Hoare triple {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:12,242 INFO L273 TraceCheckUtils]: 11: Hoare triple {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} assume !(0 != #t~nondet3);havoc #t~nondet3; {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:12,242 INFO L256 TraceCheckUtils]: 12: Hoare triple {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {413#true} is VALID [2018-11-19 00:05:12,243 INFO L273 TraceCheckUtils]: 13: Hoare triple {413#true} ~cond := #in~cond; {413#true} is VALID [2018-11-19 00:05:12,243 INFO L273 TraceCheckUtils]: 14: Hoare triple {413#true} assume !(0 == ~cond); {413#true} is VALID [2018-11-19 00:05:12,243 INFO L273 TraceCheckUtils]: 15: Hoare triple {413#true} assume true; {413#true} is VALID [2018-11-19 00:05:12,244 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {413#true} {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} #83#return; {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:12,245 INFO L256 TraceCheckUtils]: 17: Hoare triple {448#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {476#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:12,250 INFO L273 TraceCheckUtils]: 18: Hoare triple {476#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {480#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-19 00:05:12,251 INFO L273 TraceCheckUtils]: 19: Hoare triple {480#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {414#false} is VALID [2018-11-19 00:05:12,251 INFO L273 TraceCheckUtils]: 20: Hoare triple {414#false} assume !false; {414#false} is VALID [2018-11-19 00:05:12,252 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2018-11-19 00:05:12,271 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-19 00:05:12,271 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [8] total 11 [2018-11-19 00:05:12,272 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 21 [2018-11-19 00:05:12,272 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:12,273 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states. [2018-11-19 00:05:12,391 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:12,392 INFO L459 AbstractCegarLoop]: Interpolant automaton has 11 states [2018-11-19 00:05:12,392 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2018-11-19 00:05:12,393 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2018-11-19 00:05:12,393 INFO L87 Difference]: Start difference. First operand 34 states and 41 transitions. Second operand 11 states. [2018-11-19 00:05:13,568 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:13,569 INFO L93 Difference]: Finished difference Result 54 states and 65 transitions. [2018-11-19 00:05:13,569 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-19 00:05:13,569 INFO L78 Accepts]: Start accepts. Automaton has 11 states. Word has length 21 [2018-11-19 00:05:13,569 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:13,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-19 00:05:13,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 59 transitions. [2018-11-19 00:05:13,573 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 11 states. [2018-11-19 00:05:13,577 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 59 transitions. [2018-11-19 00:05:13,577 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 59 transitions. [2018-11-19 00:05:13,672 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:13,675 INFO L225 Difference]: With dead ends: 54 [2018-11-19 00:05:13,675 INFO L226 Difference]: Without dead ends: 52 [2018-11-19 00:05:13,676 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 19 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 23 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2018-11-19 00:05:13,676 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2018-11-19 00:05:13,763 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 50. [2018-11-19 00:05:13,763 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:13,763 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand 50 states. [2018-11-19 00:05:13,764 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand 50 states. [2018-11-19 00:05:13,764 INFO L87 Difference]: Start difference. First operand 52 states. Second operand 50 states. [2018-11-19 00:05:13,769 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:13,769 INFO L93 Difference]: Finished difference Result 52 states and 63 transitions. [2018-11-19 00:05:13,769 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 63 transitions. [2018-11-19 00:05:13,770 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:13,770 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:13,771 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand 52 states. [2018-11-19 00:05:13,771 INFO L87 Difference]: Start difference. First operand 50 states. Second operand 52 states. [2018-11-19 00:05:13,775 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:13,776 INFO L93 Difference]: Finished difference Result 52 states and 63 transitions. [2018-11-19 00:05:13,776 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 63 transitions. [2018-11-19 00:05:13,777 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:13,778 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:13,778 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:13,778 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:13,778 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 50 states. [2018-11-19 00:05:13,782 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 61 transitions. [2018-11-19 00:05:13,783 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 61 transitions. Word has length 21 [2018-11-19 00:05:13,783 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:13,783 INFO L480 AbstractCegarLoop]: Abstraction has 50 states and 61 transitions. [2018-11-19 00:05:13,783 INFO L481 AbstractCegarLoop]: Interpolant automaton has 11 states. [2018-11-19 00:05:13,783 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 61 transitions. [2018-11-19 00:05:13,784 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2018-11-19 00:05:13,785 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:13,785 INFO L375 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:13,785 INFO L423 AbstractCegarLoop]: === Iteration 4 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:13,785 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:13,786 INFO L82 PathProgramCache]: Analyzing trace with hash -1060690802, now seen corresponding path program 1 times [2018-11-19 00:05:13,786 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:13,786 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:13,787 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:13,787 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:13,787 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:13,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:13,940 INFO L256 TraceCheckUtils]: 0: Hoare triple {744#true} call ULTIMATE.init(); {744#true} is VALID [2018-11-19 00:05:13,940 INFO L273 TraceCheckUtils]: 1: Hoare triple {744#true} assume true; {744#true} is VALID [2018-11-19 00:05:13,941 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {744#true} {744#true} #71#return; {744#true} is VALID [2018-11-19 00:05:13,941 INFO L256 TraceCheckUtils]: 3: Hoare triple {744#true} call #t~ret8 := main(); {744#true} is VALID [2018-11-19 00:05:13,941 INFO L273 TraceCheckUtils]: 4: Hoare triple {744#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {744#true} is VALID [2018-11-19 00:05:13,941 INFO L273 TraceCheckUtils]: 5: Hoare triple {744#true} assume ~bufferlen~0 > 1; {744#true} is VALID [2018-11-19 00:05:13,942 INFO L273 TraceCheckUtils]: 6: Hoare triple {744#true} assume ~inlen~0 > 0; {744#true} is VALID [2018-11-19 00:05:13,942 INFO L273 TraceCheckUtils]: 7: Hoare triple {744#true} assume ~bufferlen~0 < ~inlen~0; {744#true} is VALID [2018-11-19 00:05:13,943 INFO L273 TraceCheckUtils]: 8: Hoare triple {744#true} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:13,946 INFO L273 TraceCheckUtils]: 9: Hoare triple {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} assume true; {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:13,946 INFO L273 TraceCheckUtils]: 10: Hoare triple {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:13,948 INFO L273 TraceCheckUtils]: 11: Hoare triple {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:13,948 INFO L273 TraceCheckUtils]: 12: Hoare triple {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:13,949 INFO L256 TraceCheckUtils]: 13: Hoare triple {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {744#true} is VALID [2018-11-19 00:05:13,949 INFO L273 TraceCheckUtils]: 14: Hoare triple {744#true} ~cond := #in~cond; {747#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:13,950 INFO L273 TraceCheckUtils]: 15: Hoare triple {747#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {748#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:13,951 INFO L273 TraceCheckUtils]: 16: Hoare triple {748#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {748#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:13,953 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {748#(not (= |__VERIFIER_assert_#in~cond| 0))} {746#(and (<= 0 main_~in~0) (<= 0 main_~buf~0))} #75#return; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:13,953 INFO L256 TraceCheckUtils]: 18: Hoare triple {749#(<= 0 main_~in~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {744#true} is VALID [2018-11-19 00:05:13,954 INFO L273 TraceCheckUtils]: 19: Hoare triple {744#true} ~cond := #in~cond; {744#true} is VALID [2018-11-19 00:05:13,954 INFO L273 TraceCheckUtils]: 20: Hoare triple {744#true} assume !(0 == ~cond); {744#true} is VALID [2018-11-19 00:05:13,954 INFO L273 TraceCheckUtils]: 21: Hoare triple {744#true} assume true; {744#true} is VALID [2018-11-19 00:05:13,956 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {744#true} {749#(<= 0 main_~in~0)} #77#return; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:13,959 INFO L273 TraceCheckUtils]: 23: Hoare triple {749#(<= 0 main_~in~0)} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:13,962 INFO L273 TraceCheckUtils]: 24: Hoare triple {749#(<= 0 main_~in~0)} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {750#(<= 1 main_~in~0)} is VALID [2018-11-19 00:05:13,963 INFO L256 TraceCheckUtils]: 25: Hoare triple {750#(<= 1 main_~in~0)} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {748#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:13,963 INFO L273 TraceCheckUtils]: 26: Hoare triple {748#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {751#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-19 00:05:13,964 INFO L273 TraceCheckUtils]: 27: Hoare triple {751#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {745#false} is VALID [2018-11-19 00:05:13,964 INFO L273 TraceCheckUtils]: 28: Hoare triple {745#false} assume !false; {745#false} is VALID [2018-11-19 00:05:13,967 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 3 proven. 4 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2018-11-19 00:05:13,967 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-19 00:05:13,967 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 3 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-19 00:05:13,986 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:14,004 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:14,013 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:14,014 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-19 00:05:14,124 INFO L256 TraceCheckUtils]: 0: Hoare triple {744#true} call ULTIMATE.init(); {744#true} is VALID [2018-11-19 00:05:14,125 INFO L273 TraceCheckUtils]: 1: Hoare triple {744#true} assume true; {744#true} is VALID [2018-11-19 00:05:14,125 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {744#true} {744#true} #71#return; {744#true} is VALID [2018-11-19 00:05:14,126 INFO L256 TraceCheckUtils]: 3: Hoare triple {744#true} call #t~ret8 := main(); {744#true} is VALID [2018-11-19 00:05:14,126 INFO L273 TraceCheckUtils]: 4: Hoare triple {744#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {744#true} is VALID [2018-11-19 00:05:14,127 INFO L273 TraceCheckUtils]: 5: Hoare triple {744#true} assume ~bufferlen~0 > 1; {744#true} is VALID [2018-11-19 00:05:14,127 INFO L273 TraceCheckUtils]: 6: Hoare triple {744#true} assume ~inlen~0 > 0; {744#true} is VALID [2018-11-19 00:05:14,128 INFO L273 TraceCheckUtils]: 7: Hoare triple {744#true} assume ~bufferlen~0 < ~inlen~0; {744#true} is VALID [2018-11-19 00:05:14,132 INFO L273 TraceCheckUtils]: 8: Hoare triple {744#true} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:14,133 INFO L273 TraceCheckUtils]: 9: Hoare triple {749#(<= 0 main_~in~0)} assume true; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:14,133 INFO L273 TraceCheckUtils]: 10: Hoare triple {749#(<= 0 main_~in~0)} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:14,135 INFO L273 TraceCheckUtils]: 11: Hoare triple {749#(<= 0 main_~in~0)} assume !!(0 != #t~nondet3);havoc #t~nondet3; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:14,137 INFO L273 TraceCheckUtils]: 12: Hoare triple {749#(<= 0 main_~in~0)} assume !(~buf~0 == ~buflim~0); {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:14,137 INFO L256 TraceCheckUtils]: 13: Hoare triple {749#(<= 0 main_~in~0)} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {744#true} is VALID [2018-11-19 00:05:14,138 INFO L273 TraceCheckUtils]: 14: Hoare triple {744#true} ~cond := #in~cond; {744#true} is VALID [2018-11-19 00:05:14,138 INFO L273 TraceCheckUtils]: 15: Hoare triple {744#true} assume !(0 == ~cond); {744#true} is VALID [2018-11-19 00:05:14,138 INFO L273 TraceCheckUtils]: 16: Hoare triple {744#true} assume true; {744#true} is VALID [2018-11-19 00:05:14,142 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {744#true} {749#(<= 0 main_~in~0)} #75#return; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:14,142 INFO L256 TraceCheckUtils]: 18: Hoare triple {749#(<= 0 main_~in~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {744#true} is VALID [2018-11-19 00:05:14,142 INFO L273 TraceCheckUtils]: 19: Hoare triple {744#true} ~cond := #in~cond; {744#true} is VALID [2018-11-19 00:05:14,143 INFO L273 TraceCheckUtils]: 20: Hoare triple {744#true} assume !(0 == ~cond); {744#true} is VALID [2018-11-19 00:05:14,143 INFO L273 TraceCheckUtils]: 21: Hoare triple {744#true} assume true; {744#true} is VALID [2018-11-19 00:05:14,158 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {744#true} {749#(<= 0 main_~in~0)} #77#return; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:14,160 INFO L273 TraceCheckUtils]: 23: Hoare triple {749#(<= 0 main_~in~0)} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {749#(<= 0 main_~in~0)} is VALID [2018-11-19 00:05:14,161 INFO L273 TraceCheckUtils]: 24: Hoare triple {749#(<= 0 main_~in~0)} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {750#(<= 1 main_~in~0)} is VALID [2018-11-19 00:05:14,161 INFO L256 TraceCheckUtils]: 25: Hoare triple {750#(<= 1 main_~in~0)} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {830#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:14,165 INFO L273 TraceCheckUtils]: 26: Hoare triple {830#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {834#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-19 00:05:14,168 INFO L273 TraceCheckUtils]: 27: Hoare triple {834#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {745#false} is VALID [2018-11-19 00:05:14,169 INFO L273 TraceCheckUtils]: 28: Hoare triple {745#false} assume !false; {745#false} is VALID [2018-11-19 00:05:14,170 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2018-11-19 00:05:14,192 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-19 00:05:14,192 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [6] imperfect sequences [8] total 10 [2018-11-19 00:05:14,193 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 29 [2018-11-19 00:05:14,193 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:14,193 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states. [2018-11-19 00:05:14,295 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:14,295 INFO L459 AbstractCegarLoop]: Interpolant automaton has 10 states [2018-11-19 00:05:14,296 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2018-11-19 00:05:14,296 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2018-11-19 00:05:14,297 INFO L87 Difference]: Start difference. First operand 50 states and 61 transitions. Second operand 10 states. [2018-11-19 00:05:15,428 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:15,428 INFO L93 Difference]: Finished difference Result 61 states and 72 transitions. [2018-11-19 00:05:15,429 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2018-11-19 00:05:15,429 INFO L78 Accepts]: Start accepts. Automaton has 10 states. Word has length 29 [2018-11-19 00:05:15,429 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:15,429 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-19 00:05:15,432 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 63 transitions. [2018-11-19 00:05:15,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 10 states. [2018-11-19 00:05:15,435 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 63 transitions. [2018-11-19 00:05:15,435 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 63 transitions. [2018-11-19 00:05:15,589 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:15,593 INFO L225 Difference]: With dead ends: 61 [2018-11-19 00:05:15,593 INFO L226 Difference]: Without dead ends: 59 [2018-11-19 00:05:15,594 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 40 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=39, Invalid=117, Unknown=0, NotChecked=0, Total=156 [2018-11-19 00:05:15,594 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 59 states. [2018-11-19 00:05:15,665 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 59 to 54. [2018-11-19 00:05:15,665 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:15,665 INFO L82 GeneralOperation]: Start isEquivalent. First operand 59 states. Second operand 54 states. [2018-11-19 00:05:15,665 INFO L74 IsIncluded]: Start isIncluded. First operand 59 states. Second operand 54 states. [2018-11-19 00:05:15,666 INFO L87 Difference]: Start difference. First operand 59 states. Second operand 54 states. [2018-11-19 00:05:15,670 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:15,671 INFO L93 Difference]: Finished difference Result 59 states and 70 transitions. [2018-11-19 00:05:15,671 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 70 transitions. [2018-11-19 00:05:15,672 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:15,672 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:15,672 INFO L74 IsIncluded]: Start isIncluded. First operand 54 states. Second operand 59 states. [2018-11-19 00:05:15,672 INFO L87 Difference]: Start difference. First operand 54 states. Second operand 59 states. [2018-11-19 00:05:15,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:15,677 INFO L93 Difference]: Finished difference Result 59 states and 70 transitions. [2018-11-19 00:05:15,677 INFO L276 IsEmpty]: Start isEmpty. Operand 59 states and 70 transitions. [2018-11-19 00:05:15,678 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:15,679 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:15,679 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:15,679 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:15,679 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 54 states. [2018-11-19 00:05:15,683 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 54 states to 54 states and 64 transitions. [2018-11-19 00:05:15,683 INFO L78 Accepts]: Start accepts. Automaton has 54 states and 64 transitions. Word has length 29 [2018-11-19 00:05:15,683 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:15,683 INFO L480 AbstractCegarLoop]: Abstraction has 54 states and 64 transitions. [2018-11-19 00:05:15,683 INFO L481 AbstractCegarLoop]: Interpolant automaton has 10 states. [2018-11-19 00:05:15,684 INFO L276 IsEmpty]: Start isEmpty. Operand 54 states and 64 transitions. [2018-11-19 00:05:15,685 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2018-11-19 00:05:15,685 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:15,685 INFO L375 BasicCegarLoop]: trace histogram [4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:15,686 INFO L423 AbstractCegarLoop]: === Iteration 5 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:15,686 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:15,686 INFO L82 PathProgramCache]: Analyzing trace with hash 578348401, now seen corresponding path program 1 times [2018-11-19 00:05:15,686 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:15,686 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:15,687 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:15,687 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:15,688 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:15,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:15,860 INFO L256 TraceCheckUtils]: 0: Hoare triple {1127#true} call ULTIMATE.init(); {1127#true} is VALID [2018-11-19 00:05:15,861 INFO L273 TraceCheckUtils]: 1: Hoare triple {1127#true} assume true; {1127#true} is VALID [2018-11-19 00:05:15,861 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {1127#true} {1127#true} #71#return; {1127#true} is VALID [2018-11-19 00:05:15,861 INFO L256 TraceCheckUtils]: 3: Hoare triple {1127#true} call #t~ret8 := main(); {1127#true} is VALID [2018-11-19 00:05:15,862 INFO L273 TraceCheckUtils]: 4: Hoare triple {1127#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {1127#true} is VALID [2018-11-19 00:05:15,863 INFO L273 TraceCheckUtils]: 5: Hoare triple {1127#true} assume ~bufferlen~0 > 1; {1129#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:15,863 INFO L273 TraceCheckUtils]: 6: Hoare triple {1129#(<= 2 main_~bufferlen~0)} assume ~inlen~0 > 0; {1129#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:15,864 INFO L273 TraceCheckUtils]: 7: Hoare triple {1129#(<= 2 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {1129#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:15,864 INFO L273 TraceCheckUtils]: 8: Hoare triple {1129#(<= 2 main_~bufferlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:15,865 INFO L273 TraceCheckUtils]: 9: Hoare triple {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume true; {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:15,865 INFO L273 TraceCheckUtils]: 10: Hoare triple {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:15,866 INFO L273 TraceCheckUtils]: 11: Hoare triple {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume !(0 != #t~nondet3);havoc #t~nondet3; {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:15,866 INFO L256 TraceCheckUtils]: 12: Hoare triple {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {1127#true} is VALID [2018-11-19 00:05:15,867 INFO L273 TraceCheckUtils]: 13: Hoare triple {1127#true} ~cond := #in~cond; {1131#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:15,868 INFO L273 TraceCheckUtils]: 14: Hoare triple {1131#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {1132#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:15,868 INFO L273 TraceCheckUtils]: 15: Hoare triple {1132#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1132#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:15,870 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {1132#(not (= |__VERIFIER_assert_#in~cond| 0))} {1130#(and (<= 0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #83#return; {1133#(<= (+ main_~buf~0 2) main_~bufferlen~0)} is VALID [2018-11-19 00:05:15,870 INFO L256 TraceCheckUtils]: 17: Hoare triple {1133#(<= (+ main_~buf~0 2) main_~bufferlen~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {1127#true} is VALID [2018-11-19 00:05:15,871 INFO L273 TraceCheckUtils]: 18: Hoare triple {1127#true} ~cond := #in~cond; {1127#true} is VALID [2018-11-19 00:05:15,871 INFO L273 TraceCheckUtils]: 19: Hoare triple {1127#true} assume !(0 == ~cond); {1127#true} is VALID [2018-11-19 00:05:15,871 INFO L273 TraceCheckUtils]: 20: Hoare triple {1127#true} assume true; {1127#true} is VALID [2018-11-19 00:05:15,873 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {1127#true} {1133#(<= (+ main_~buf~0 2) main_~bufferlen~0)} #85#return; {1133#(<= (+ main_~buf~0 2) main_~bufferlen~0)} is VALID [2018-11-19 00:05:15,874 INFO L273 TraceCheckUtils]: 22: Hoare triple {1133#(<= (+ main_~buf~0 2) main_~bufferlen~0)} #t~post6 := ~buf~0;~buf~0 := 1 + #t~post6;havoc #t~post6; {1134#(<= (+ main_~buf~0 1) main_~bufferlen~0)} is VALID [2018-11-19 00:05:15,874 INFO L256 TraceCheckUtils]: 23: Hoare triple {1134#(<= (+ main_~buf~0 1) main_~bufferlen~0)} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {1127#true} is VALID [2018-11-19 00:05:15,874 INFO L273 TraceCheckUtils]: 24: Hoare triple {1127#true} ~cond := #in~cond; {1127#true} is VALID [2018-11-19 00:05:15,874 INFO L273 TraceCheckUtils]: 25: Hoare triple {1127#true} assume !(0 == ~cond); {1127#true} is VALID [2018-11-19 00:05:15,875 INFO L273 TraceCheckUtils]: 26: Hoare triple {1127#true} assume true; {1127#true} is VALID [2018-11-19 00:05:15,875 INFO L268 TraceCheckUtils]: 27: Hoare quadruple {1127#true} {1134#(<= (+ main_~buf~0 1) main_~bufferlen~0)} #87#return; {1134#(<= (+ main_~buf~0 1) main_~bufferlen~0)} is VALID [2018-11-19 00:05:15,876 INFO L256 TraceCheckUtils]: 28: Hoare triple {1134#(<= (+ main_~buf~0 1) main_~bufferlen~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {1132#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:15,877 INFO L273 TraceCheckUtils]: 29: Hoare triple {1132#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {1135#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-19 00:05:15,878 INFO L273 TraceCheckUtils]: 30: Hoare triple {1135#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {1128#false} is VALID [2018-11-19 00:05:15,878 INFO L273 TraceCheckUtils]: 31: Hoare triple {1128#false} assume !false; {1128#false} is VALID [2018-11-19 00:05:15,880 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 7 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-19 00:05:15,880 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-19 00:05:15,880 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 4 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-19 00:05:15,889 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:15,902 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:15,914 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:15,916 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-19 00:05:16,084 INFO L256 TraceCheckUtils]: 0: Hoare triple {1127#true} call ULTIMATE.init(); {1127#true} is VALID [2018-11-19 00:05:16,085 INFO L273 TraceCheckUtils]: 1: Hoare triple {1127#true} assume true; {1127#true} is VALID [2018-11-19 00:05:16,085 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {1127#true} {1127#true} #71#return; {1127#true} is VALID [2018-11-19 00:05:16,086 INFO L256 TraceCheckUtils]: 3: Hoare triple {1127#true} call #t~ret8 := main(); {1127#true} is VALID [2018-11-19 00:05:16,086 INFO L273 TraceCheckUtils]: 4: Hoare triple {1127#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {1127#true} is VALID [2018-11-19 00:05:16,087 INFO L273 TraceCheckUtils]: 5: Hoare triple {1127#true} assume ~bufferlen~0 > 1; {1129#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:16,088 INFO L273 TraceCheckUtils]: 6: Hoare triple {1129#(<= 2 main_~bufferlen~0)} assume ~inlen~0 > 0; {1129#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:16,088 INFO L273 TraceCheckUtils]: 7: Hoare triple {1129#(<= 2 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {1129#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:16,089 INFO L273 TraceCheckUtils]: 8: Hoare triple {1129#(<= 2 main_~bufferlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:16,089 INFO L273 TraceCheckUtils]: 9: Hoare triple {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} assume true; {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:16,090 INFO L273 TraceCheckUtils]: 10: Hoare triple {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:16,090 INFO L273 TraceCheckUtils]: 11: Hoare triple {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} assume !(0 != #t~nondet3);havoc #t~nondet3; {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:16,091 INFO L256 TraceCheckUtils]: 12: Hoare triple {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {1127#true} is VALID [2018-11-19 00:05:16,091 INFO L273 TraceCheckUtils]: 13: Hoare triple {1127#true} ~cond := #in~cond; {1127#true} is VALID [2018-11-19 00:05:16,091 INFO L273 TraceCheckUtils]: 14: Hoare triple {1127#true} assume !(0 == ~cond); {1127#true} is VALID [2018-11-19 00:05:16,092 INFO L273 TraceCheckUtils]: 15: Hoare triple {1127#true} assume true; {1127#true} is VALID [2018-11-19 00:05:16,093 INFO L268 TraceCheckUtils]: 16: Hoare quadruple {1127#true} {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} #83#return; {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:16,093 INFO L256 TraceCheckUtils]: 17: Hoare triple {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {1127#true} is VALID [2018-11-19 00:05:16,093 INFO L273 TraceCheckUtils]: 18: Hoare triple {1127#true} ~cond := #in~cond; {1127#true} is VALID [2018-11-19 00:05:16,093 INFO L273 TraceCheckUtils]: 19: Hoare triple {1127#true} assume !(0 == ~cond); {1127#true} is VALID [2018-11-19 00:05:16,093 INFO L273 TraceCheckUtils]: 20: Hoare triple {1127#true} assume true; {1127#true} is VALID [2018-11-19 00:05:16,094 INFO L268 TraceCheckUtils]: 21: Hoare quadruple {1127#true} {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} #85#return; {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:16,095 INFO L273 TraceCheckUtils]: 22: Hoare triple {1163#(and (<= main_~buf~0 0) (<= 2 main_~bufferlen~0))} #t~post6 := ~buf~0;~buf~0 := 1 + #t~post6;havoc #t~post6; {1206#(and (<= main_~buf~0 1) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:16,095 INFO L256 TraceCheckUtils]: 23: Hoare triple {1206#(and (<= main_~buf~0 1) (<= 2 main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {1127#true} is VALID [2018-11-19 00:05:16,095 INFO L273 TraceCheckUtils]: 24: Hoare triple {1127#true} ~cond := #in~cond; {1127#true} is VALID [2018-11-19 00:05:16,095 INFO L273 TraceCheckUtils]: 25: Hoare triple {1127#true} assume !(0 == ~cond); {1127#true} is VALID [2018-11-19 00:05:16,096 INFO L273 TraceCheckUtils]: 26: Hoare triple {1127#true} assume true; {1127#true} is VALID [2018-11-19 00:05:16,096 INFO L268 TraceCheckUtils]: 27: Hoare quadruple {1127#true} {1206#(and (<= main_~buf~0 1) (<= 2 main_~bufferlen~0))} #87#return; {1206#(and (<= main_~buf~0 1) (<= 2 main_~bufferlen~0))} is VALID [2018-11-19 00:05:16,097 INFO L256 TraceCheckUtils]: 28: Hoare triple {1206#(and (<= main_~buf~0 1) (<= 2 main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {1225#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:16,098 INFO L273 TraceCheckUtils]: 29: Hoare triple {1225#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {1229#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-19 00:05:16,099 INFO L273 TraceCheckUtils]: 30: Hoare triple {1229#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1128#false} is VALID [2018-11-19 00:05:16,099 INFO L273 TraceCheckUtils]: 31: Hoare triple {1128#false} assume !false; {1128#false} is VALID [2018-11-19 00:05:16,101 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-19 00:05:16,120 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-19 00:05:16,120 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [7] imperfect sequences [9] total 13 [2018-11-19 00:05:16,121 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 32 [2018-11-19 00:05:16,121 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:16,122 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 13 states. [2018-11-19 00:05:16,348 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:16,348 INFO L459 AbstractCegarLoop]: Interpolant automaton has 13 states [2018-11-19 00:05:16,349 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2018-11-19 00:05:16,349 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=121, Unknown=0, NotChecked=0, Total=156 [2018-11-19 00:05:16,349 INFO L87 Difference]: Start difference. First operand 54 states and 64 transitions. Second operand 13 states. [2018-11-19 00:05:18,716 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:18,717 INFO L93 Difference]: Finished difference Result 77 states and 95 transitions. [2018-11-19 00:05:18,717 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-19 00:05:18,717 INFO L78 Accepts]: Start accepts. Automaton has 13 states. Word has length 32 [2018-11-19 00:05:18,717 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:18,717 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-19 00:05:18,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 83 transitions. [2018-11-19 00:05:18,721 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 13 states. [2018-11-19 00:05:18,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 83 transitions. [2018-11-19 00:05:18,723 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 83 transitions. [2018-11-19 00:05:18,831 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:18,835 INFO L225 Difference]: With dead ends: 77 [2018-11-19 00:05:18,835 INFO L226 Difference]: Without dead ends: 70 [2018-11-19 00:05:18,835 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 45 GetRequests, 29 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=64, Invalid=208, Unknown=0, NotChecked=0, Total=272 [2018-11-19 00:05:18,836 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2018-11-19 00:05:18,905 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 68. [2018-11-19 00:05:18,905 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:18,906 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand 68 states. [2018-11-19 00:05:18,906 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand 68 states. [2018-11-19 00:05:18,906 INFO L87 Difference]: Start difference. First operand 70 states. Second operand 68 states. [2018-11-19 00:05:18,910 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:18,911 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2018-11-19 00:05:18,911 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2018-11-19 00:05:18,912 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:18,912 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:18,912 INFO L74 IsIncluded]: Start isIncluded. First operand 68 states. Second operand 70 states. [2018-11-19 00:05:18,912 INFO L87 Difference]: Start difference. First operand 68 states. Second operand 70 states. [2018-11-19 00:05:18,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:18,916 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2018-11-19 00:05:18,916 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2018-11-19 00:05:18,917 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:18,917 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:18,917 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:18,917 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:18,918 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 68 states. [2018-11-19 00:05:18,921 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 81 transitions. [2018-11-19 00:05:18,921 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 81 transitions. Word has length 32 [2018-11-19 00:05:18,922 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:18,922 INFO L480 AbstractCegarLoop]: Abstraction has 68 states and 81 transitions. [2018-11-19 00:05:18,922 INFO L481 AbstractCegarLoop]: Interpolant automaton has 13 states. [2018-11-19 00:05:18,922 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 81 transitions. [2018-11-19 00:05:18,923 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2018-11-19 00:05:18,923 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:18,923 INFO L375 BasicCegarLoop]: trace histogram [4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:18,923 INFO L423 AbstractCegarLoop]: === Iteration 6 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:18,924 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:18,924 INFO L82 PathProgramCache]: Analyzing trace with hash 434465614, now seen corresponding path program 1 times [2018-11-19 00:05:18,924 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:18,924 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:18,925 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:18,925 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:18,925 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:18,935 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:19,085 INFO L256 TraceCheckUtils]: 0: Hoare triple {1590#true} call ULTIMATE.init(); {1590#true} is VALID [2018-11-19 00:05:19,086 INFO L273 TraceCheckUtils]: 1: Hoare triple {1590#true} assume true; {1590#true} is VALID [2018-11-19 00:05:19,086 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {1590#true} {1590#true} #71#return; {1590#true} is VALID [2018-11-19 00:05:19,087 INFO L256 TraceCheckUtils]: 3: Hoare triple {1590#true} call #t~ret8 := main(); {1590#true} is VALID [2018-11-19 00:05:19,087 INFO L273 TraceCheckUtils]: 4: Hoare triple {1590#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {1590#true} is VALID [2018-11-19 00:05:19,088 INFO L273 TraceCheckUtils]: 5: Hoare triple {1590#true} assume ~bufferlen~0 > 1; {1592#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:19,089 INFO L273 TraceCheckUtils]: 6: Hoare triple {1592#(<= 2 main_~bufferlen~0)} assume ~inlen~0 > 0; {1592#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:19,095 INFO L273 TraceCheckUtils]: 7: Hoare triple {1592#(<= 2 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {1593#(<= 3 main_~inlen~0)} is VALID [2018-11-19 00:05:19,096 INFO L273 TraceCheckUtils]: 8: Hoare triple {1593#(<= 3 main_~inlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:19,096 INFO L273 TraceCheckUtils]: 9: Hoare triple {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} assume true; {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:19,097 INFO L273 TraceCheckUtils]: 10: Hoare triple {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:19,097 INFO L273 TraceCheckUtils]: 11: Hoare triple {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:19,098 INFO L273 TraceCheckUtils]: 12: Hoare triple {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:19,098 INFO L256 TraceCheckUtils]: 13: Hoare triple {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {1590#true} is VALID [2018-11-19 00:05:19,099 INFO L273 TraceCheckUtils]: 14: Hoare triple {1590#true} ~cond := #in~cond; {1595#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:19,099 INFO L273 TraceCheckUtils]: 15: Hoare triple {1595#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {1596#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:19,099 INFO L273 TraceCheckUtils]: 16: Hoare triple {1596#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1596#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:19,101 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {1596#(not (= |__VERIFIER_assert_#in~cond| 0))} {1594#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} #75#return; {1597#(<= (+ main_~in~0 3) main_~inlen~0)} is VALID [2018-11-19 00:05:19,101 INFO L256 TraceCheckUtils]: 18: Hoare triple {1597#(<= (+ main_~in~0 3) main_~inlen~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {1590#true} is VALID [2018-11-19 00:05:19,101 INFO L273 TraceCheckUtils]: 19: Hoare triple {1590#true} ~cond := #in~cond; {1590#true} is VALID [2018-11-19 00:05:19,102 INFO L273 TraceCheckUtils]: 20: Hoare triple {1590#true} assume !(0 == ~cond); {1590#true} is VALID [2018-11-19 00:05:19,102 INFO L273 TraceCheckUtils]: 21: Hoare triple {1590#true} assume true; {1590#true} is VALID [2018-11-19 00:05:19,103 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {1590#true} {1597#(<= (+ main_~in~0 3) main_~inlen~0)} #77#return; {1597#(<= (+ main_~in~0 3) main_~inlen~0)} is VALID [2018-11-19 00:05:19,104 INFO L273 TraceCheckUtils]: 23: Hoare triple {1597#(<= (+ main_~in~0 3) main_~inlen~0)} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {1597#(<= (+ main_~in~0 3) main_~inlen~0)} is VALID [2018-11-19 00:05:19,105 INFO L273 TraceCheckUtils]: 24: Hoare triple {1597#(<= (+ main_~in~0 3) main_~inlen~0)} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {1598#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:19,105 INFO L256 TraceCheckUtils]: 25: Hoare triple {1598#(<= (+ main_~in~0 2) main_~inlen~0)} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {1590#true} is VALID [2018-11-19 00:05:19,105 INFO L273 TraceCheckUtils]: 26: Hoare triple {1590#true} ~cond := #in~cond; {1590#true} is VALID [2018-11-19 00:05:19,106 INFO L273 TraceCheckUtils]: 27: Hoare triple {1590#true} assume !(0 == ~cond); {1590#true} is VALID [2018-11-19 00:05:19,106 INFO L273 TraceCheckUtils]: 28: Hoare triple {1590#true} assume true; {1590#true} is VALID [2018-11-19 00:05:19,114 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {1590#true} {1598#(<= (+ main_~in~0 2) main_~inlen~0)} #79#return; {1598#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:19,119 INFO L256 TraceCheckUtils]: 30: Hoare triple {1598#(<= (+ main_~in~0 2) main_~inlen~0)} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {1596#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:19,119 INFO L273 TraceCheckUtils]: 31: Hoare triple {1596#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {1599#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-19 00:05:19,120 INFO L273 TraceCheckUtils]: 32: Hoare triple {1599#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {1591#false} is VALID [2018-11-19 00:05:19,120 INFO L273 TraceCheckUtils]: 33: Hoare triple {1591#false} assume !false; {1591#false} is VALID [2018-11-19 00:05:19,121 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 5 proven. 7 refuted. 0 times theorem prover too weak. 6 trivial. 0 not checked. [2018-11-19 00:05:19,121 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-19 00:05:19,122 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 5 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-19 00:05:19,140 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:19,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:19,178 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:19,179 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-19 00:05:19,424 INFO L256 TraceCheckUtils]: 0: Hoare triple {1590#true} call ULTIMATE.init(); {1590#true} is VALID [2018-11-19 00:05:19,425 INFO L273 TraceCheckUtils]: 1: Hoare triple {1590#true} assume true; {1590#true} is VALID [2018-11-19 00:05:19,425 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {1590#true} {1590#true} #71#return; {1590#true} is VALID [2018-11-19 00:05:19,426 INFO L256 TraceCheckUtils]: 3: Hoare triple {1590#true} call #t~ret8 := main(); {1590#true} is VALID [2018-11-19 00:05:19,426 INFO L273 TraceCheckUtils]: 4: Hoare triple {1590#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {1590#true} is VALID [2018-11-19 00:05:19,429 INFO L273 TraceCheckUtils]: 5: Hoare triple {1590#true} assume ~bufferlen~0 > 1; {1592#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:19,429 INFO L273 TraceCheckUtils]: 6: Hoare triple {1592#(<= 2 main_~bufferlen~0)} assume ~inlen~0 > 0; {1592#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:19,430 INFO L273 TraceCheckUtils]: 7: Hoare triple {1592#(<= 2 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {1593#(<= 3 main_~inlen~0)} is VALID [2018-11-19 00:05:19,430 INFO L273 TraceCheckUtils]: 8: Hoare triple {1593#(<= 3 main_~inlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,431 INFO L273 TraceCheckUtils]: 9: Hoare triple {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} assume true; {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,431 INFO L273 TraceCheckUtils]: 10: Hoare triple {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,432 INFO L273 TraceCheckUtils]: 11: Hoare triple {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,432 INFO L273 TraceCheckUtils]: 12: Hoare triple {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} assume !(~buf~0 == ~buflim~0); {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,432 INFO L256 TraceCheckUtils]: 13: Hoare triple {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {1590#true} is VALID [2018-11-19 00:05:19,433 INFO L273 TraceCheckUtils]: 14: Hoare triple {1590#true} ~cond := #in~cond; {1590#true} is VALID [2018-11-19 00:05:19,433 INFO L273 TraceCheckUtils]: 15: Hoare triple {1590#true} assume !(0 == ~cond); {1590#true} is VALID [2018-11-19 00:05:19,433 INFO L273 TraceCheckUtils]: 16: Hoare triple {1590#true} assume true; {1590#true} is VALID [2018-11-19 00:05:19,434 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {1590#true} {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} #75#return; {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,435 INFO L256 TraceCheckUtils]: 18: Hoare triple {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {1590#true} is VALID [2018-11-19 00:05:19,435 INFO L273 TraceCheckUtils]: 19: Hoare triple {1590#true} ~cond := #in~cond; {1590#true} is VALID [2018-11-19 00:05:19,435 INFO L273 TraceCheckUtils]: 20: Hoare triple {1590#true} assume !(0 == ~cond); {1590#true} is VALID [2018-11-19 00:05:19,435 INFO L273 TraceCheckUtils]: 21: Hoare triple {1590#true} assume true; {1590#true} is VALID [2018-11-19 00:05:19,436 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {1590#true} {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} #77#return; {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,437 INFO L273 TraceCheckUtils]: 23: Hoare triple {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,438 INFO L273 TraceCheckUtils]: 24: Hoare triple {1627#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {1676#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,438 INFO L256 TraceCheckUtils]: 25: Hoare triple {1676#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {1590#true} is VALID [2018-11-19 00:05:19,438 INFO L273 TraceCheckUtils]: 26: Hoare triple {1590#true} ~cond := #in~cond; {1590#true} is VALID [2018-11-19 00:05:19,439 INFO L273 TraceCheckUtils]: 27: Hoare triple {1590#true} assume !(0 == ~cond); {1590#true} is VALID [2018-11-19 00:05:19,439 INFO L273 TraceCheckUtils]: 28: Hoare triple {1590#true} assume true; {1590#true} is VALID [2018-11-19 00:05:19,444 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {1590#true} {1676#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} #79#return; {1676#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:19,445 INFO L256 TraceCheckUtils]: 30: Hoare triple {1676#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {1695#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:19,445 INFO L273 TraceCheckUtils]: 31: Hoare triple {1695#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {1699#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-19 00:05:19,446 INFO L273 TraceCheckUtils]: 32: Hoare triple {1699#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1591#false} is VALID [2018-11-19 00:05:19,446 INFO L273 TraceCheckUtils]: 33: Hoare triple {1591#false} assume !false; {1591#false} is VALID [2018-11-19 00:05:19,447 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2018-11-19 00:05:19,466 INFO L312 seRefinementStrategy]: Constructing automaton from 1 perfect and 1 imperfect interpolant sequences. [2018-11-19 00:05:19,466 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [8] imperfect sequences [10] total 14 [2018-11-19 00:05:19,467 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 34 [2018-11-19 00:05:19,467 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:19,467 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states. [2018-11-19 00:05:19,539 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:19,539 INFO L459 AbstractCegarLoop]: Interpolant automaton has 14 states [2018-11-19 00:05:19,539 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2018-11-19 00:05:19,540 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=146, Unknown=0, NotChecked=0, Total=182 [2018-11-19 00:05:19,540 INFO L87 Difference]: Start difference. First operand 68 states and 81 transitions. Second operand 14 states. [2018-11-19 00:05:20,885 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:20,885 INFO L93 Difference]: Finished difference Result 79 states and 92 transitions. [2018-11-19 00:05:20,885 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2018-11-19 00:05:20,885 INFO L78 Accepts]: Start accepts. Automaton has 14 states. Word has length 34 [2018-11-19 00:05:20,886 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:20,886 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-19 00:05:20,888 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2018-11-19 00:05:20,888 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 14 states. [2018-11-19 00:05:20,891 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 77 transitions. [2018-11-19 00:05:20,891 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 77 transitions. [2018-11-19 00:05:20,996 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:20,999 INFO L225 Difference]: With dead ends: 79 [2018-11-19 00:05:20,999 INFO L226 Difference]: Without dead ends: 77 [2018-11-19 00:05:20,999 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 49 GetRequests, 31 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 40 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=71, Invalid=271, Unknown=0, NotChecked=0, Total=342 [2018-11-19 00:05:21,000 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 77 states. [2018-11-19 00:05:21,105 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 77 to 72. [2018-11-19 00:05:21,105 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:21,105 INFO L82 GeneralOperation]: Start isEquivalent. First operand 77 states. Second operand 72 states. [2018-11-19 00:05:21,105 INFO L74 IsIncluded]: Start isIncluded. First operand 77 states. Second operand 72 states. [2018-11-19 00:05:21,105 INFO L87 Difference]: Start difference. First operand 77 states. Second operand 72 states. [2018-11-19 00:05:21,109 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:21,109 INFO L93 Difference]: Finished difference Result 77 states and 90 transitions. [2018-11-19 00:05:21,109 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 90 transitions. [2018-11-19 00:05:21,110 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:21,110 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:21,110 INFO L74 IsIncluded]: Start isIncluded. First operand 72 states. Second operand 77 states. [2018-11-19 00:05:21,110 INFO L87 Difference]: Start difference. First operand 72 states. Second operand 77 states. [2018-11-19 00:05:21,114 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:21,114 INFO L93 Difference]: Finished difference Result 77 states and 90 transitions. [2018-11-19 00:05:21,114 INFO L276 IsEmpty]: Start isEmpty. Operand 77 states and 90 transitions. [2018-11-19 00:05:21,115 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:21,115 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:21,115 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:21,115 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:21,116 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 72 states. [2018-11-19 00:05:21,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 72 states to 72 states and 84 transitions. [2018-11-19 00:05:21,119 INFO L78 Accepts]: Start accepts. Automaton has 72 states and 84 transitions. Word has length 34 [2018-11-19 00:05:21,119 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:21,119 INFO L480 AbstractCegarLoop]: Abstraction has 72 states and 84 transitions. [2018-11-19 00:05:21,119 INFO L481 AbstractCegarLoop]: Interpolant automaton has 14 states. [2018-11-19 00:05:21,119 INFO L276 IsEmpty]: Start isEmpty. Operand 72 states and 84 transitions. [2018-11-19 00:05:21,121 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2018-11-19 00:05:21,121 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:21,121 INFO L375 BasicCegarLoop]: trace histogram [8, 7, 7, 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] [2018-11-19 00:05:21,121 INFO L423 AbstractCegarLoop]: === Iteration 7 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:21,121 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:21,122 INFO L82 PathProgramCache]: Analyzing trace with hash -2058374368, now seen corresponding path program 1 times [2018-11-19 00:05:21,122 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:21,122 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:21,123 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:21,123 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:21,123 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:21,139 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:21,359 INFO L256 TraceCheckUtils]: 0: Hoare triple {2082#true} call ULTIMATE.init(); {2082#true} is VALID [2018-11-19 00:05:21,360 INFO L273 TraceCheckUtils]: 1: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,360 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {2082#true} {2082#true} #71#return; {2082#true} is VALID [2018-11-19 00:05:21,361 INFO L256 TraceCheckUtils]: 3: Hoare triple {2082#true} call #t~ret8 := main(); {2082#true} is VALID [2018-11-19 00:05:21,361 INFO L273 TraceCheckUtils]: 4: Hoare triple {2082#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {2082#true} is VALID [2018-11-19 00:05:21,361 INFO L273 TraceCheckUtils]: 5: Hoare triple {2082#true} assume ~bufferlen~0 > 1; {2082#true} is VALID [2018-11-19 00:05:21,362 INFO L273 TraceCheckUtils]: 6: Hoare triple {2082#true} assume ~inlen~0 > 0; {2082#true} is VALID [2018-11-19 00:05:21,362 INFO L273 TraceCheckUtils]: 7: Hoare triple {2082#true} assume ~bufferlen~0 < ~inlen~0; {2082#true} is VALID [2018-11-19 00:05:21,363 INFO L273 TraceCheckUtils]: 8: Hoare triple {2082#true} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {2084#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:21,363 INFO L273 TraceCheckUtils]: 9: Hoare triple {2084#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)) (<= 0 main_~buf~0))} assume true; {2084#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:21,364 INFO L273 TraceCheckUtils]: 10: Hoare triple {2084#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)) (<= 0 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {2084#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:21,364 INFO L273 TraceCheckUtils]: 11: Hoare triple {2084#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)) (<= 0 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {2084#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:21,365 INFO L273 TraceCheckUtils]: 12: Hoare triple {2084#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)) (<= 0 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {2085#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:21,365 INFO L256 TraceCheckUtils]: 13: Hoare triple {2085#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 0 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,366 INFO L273 TraceCheckUtils]: 14: Hoare triple {2082#true} ~cond := #in~cond; {2086#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:21,366 INFO L273 TraceCheckUtils]: 15: Hoare triple {2086#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:21,367 INFO L273 TraceCheckUtils]: 16: Hoare triple {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:21,368 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} {2085#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 0 main_~buf~0))} #75#return; {2088#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,369 INFO L256 TraceCheckUtils]: 18: Hoare triple {2088#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,369 INFO L273 TraceCheckUtils]: 19: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,369 INFO L273 TraceCheckUtils]: 20: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,370 INFO L273 TraceCheckUtils]: 21: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,371 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {2082#true} {2088#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} #77#return; {2088#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,371 INFO L273 TraceCheckUtils]: 23: Hoare triple {2088#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,372 INFO L273 TraceCheckUtils]: 24: Hoare triple {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,372 INFO L256 TraceCheckUtils]: 25: Hoare triple {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,372 INFO L273 TraceCheckUtils]: 26: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,372 INFO L273 TraceCheckUtils]: 27: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,373 INFO L273 TraceCheckUtils]: 28: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,373 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {2082#true} {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #79#return; {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,373 INFO L256 TraceCheckUtils]: 30: Hoare triple {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,374 INFO L273 TraceCheckUtils]: 31: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,374 INFO L273 TraceCheckUtils]: 32: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,374 INFO L273 TraceCheckUtils]: 33: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,375 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {2082#true} {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #81#return; {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,376 INFO L273 TraceCheckUtils]: 35: Hoare triple {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume true; {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,376 INFO L273 TraceCheckUtils]: 36: Hoare triple {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,376 INFO L273 TraceCheckUtils]: 37: Hoare triple {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume !(0 != #t~nondet3);havoc #t~nondet3; {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,377 INFO L256 TraceCheckUtils]: 38: Hoare triple {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,377 INFO L273 TraceCheckUtils]: 39: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,377 INFO L273 TraceCheckUtils]: 40: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,377 INFO L273 TraceCheckUtils]: 41: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,378 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {2082#true} {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #83#return; {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,378 INFO L256 TraceCheckUtils]: 43: Hoare triple {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,378 INFO L273 TraceCheckUtils]: 44: Hoare triple {2082#true} ~cond := #in~cond; {2086#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:21,379 INFO L273 TraceCheckUtils]: 45: Hoare triple {2086#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:21,380 INFO L273 TraceCheckUtils]: 46: Hoare triple {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:21,381 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} {2089#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #85#return; {2090#(<= (+ main_~buf~0 2) main_~bufferlen~0)} is VALID [2018-11-19 00:05:21,381 INFO L273 TraceCheckUtils]: 48: Hoare triple {2090#(<= (+ main_~buf~0 2) main_~bufferlen~0)} #t~post6 := ~buf~0;~buf~0 := 1 + #t~post6;havoc #t~post6; {2091#(<= (+ main_~buf~0 1) main_~bufferlen~0)} is VALID [2018-11-19 00:05:21,382 INFO L256 TraceCheckUtils]: 49: Hoare triple {2091#(<= (+ main_~buf~0 1) main_~bufferlen~0)} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,382 INFO L273 TraceCheckUtils]: 50: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,382 INFO L273 TraceCheckUtils]: 51: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,382 INFO L273 TraceCheckUtils]: 52: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,383 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {2082#true} {2091#(<= (+ main_~buf~0 1) main_~bufferlen~0)} #87#return; {2091#(<= (+ main_~buf~0 1) main_~bufferlen~0)} is VALID [2018-11-19 00:05:21,383 INFO L256 TraceCheckUtils]: 54: Hoare triple {2091#(<= (+ main_~buf~0 1) main_~bufferlen~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:21,384 INFO L273 TraceCheckUtils]: 55: Hoare triple {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {2092#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-19 00:05:21,384 INFO L273 TraceCheckUtils]: 56: Hoare triple {2092#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {2083#false} is VALID [2018-11-19 00:05:21,384 INFO L273 TraceCheckUtils]: 57: Hoare triple {2083#false} assume !false; {2083#false} is VALID [2018-11-19 00:05:21,389 INFO L134 CoverageAnalysis]: Checked inductivity of 101 backedges. 24 proven. 23 refuted. 0 times theorem prover too weak. 54 trivial. 0 not checked. [2018-11-19 00:05:21,389 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-19 00:05:21,389 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 6 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-19 00:05:21,398 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:21,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:21,428 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:21,430 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-19 00:05:21,851 INFO L256 TraceCheckUtils]: 0: Hoare triple {2082#true} call ULTIMATE.init(); {2082#true} is VALID [2018-11-19 00:05:21,851 INFO L273 TraceCheckUtils]: 1: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,851 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {2082#true} {2082#true} #71#return; {2082#true} is VALID [2018-11-19 00:05:21,851 INFO L256 TraceCheckUtils]: 3: Hoare triple {2082#true} call #t~ret8 := main(); {2082#true} is VALID [2018-11-19 00:05:21,852 INFO L273 TraceCheckUtils]: 4: Hoare triple {2082#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {2082#true} is VALID [2018-11-19 00:05:21,852 INFO L273 TraceCheckUtils]: 5: Hoare triple {2082#true} assume ~bufferlen~0 > 1; {2111#(< 1 main_~bufferlen~0)} is VALID [2018-11-19 00:05:21,853 INFO L273 TraceCheckUtils]: 6: Hoare triple {2111#(< 1 main_~bufferlen~0)} assume ~inlen~0 > 0; {2111#(< 1 main_~bufferlen~0)} is VALID [2018-11-19 00:05:21,853 INFO L273 TraceCheckUtils]: 7: Hoare triple {2111#(< 1 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {2111#(< 1 main_~bufferlen~0)} is VALID [2018-11-19 00:05:21,854 INFO L273 TraceCheckUtils]: 8: Hoare triple {2111#(< 1 main_~bufferlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {2121#(and (= main_~bufferlen~0 (+ main_~buflim~0 2)) (< 1 main_~bufferlen~0) (= main_~buf~0 0))} is VALID [2018-11-19 00:05:21,855 INFO L273 TraceCheckUtils]: 9: Hoare triple {2121#(and (= main_~bufferlen~0 (+ main_~buflim~0 2)) (< 1 main_~bufferlen~0) (= main_~buf~0 0))} assume true; {2121#(and (= main_~bufferlen~0 (+ main_~buflim~0 2)) (< 1 main_~bufferlen~0) (= main_~buf~0 0))} is VALID [2018-11-19 00:05:21,855 INFO L273 TraceCheckUtils]: 10: Hoare triple {2121#(and (= main_~bufferlen~0 (+ main_~buflim~0 2)) (< 1 main_~bufferlen~0) (= main_~buf~0 0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {2121#(and (= main_~bufferlen~0 (+ main_~buflim~0 2)) (< 1 main_~bufferlen~0) (= main_~buf~0 0))} is VALID [2018-11-19 00:05:21,857 INFO L273 TraceCheckUtils]: 11: Hoare triple {2121#(and (= main_~bufferlen~0 (+ main_~buflim~0 2)) (< 1 main_~bufferlen~0) (= main_~buf~0 0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {2121#(and (= main_~bufferlen~0 (+ main_~buflim~0 2)) (< 1 main_~bufferlen~0) (= main_~buf~0 0))} is VALID [2018-11-19 00:05:21,858 INFO L273 TraceCheckUtils]: 12: Hoare triple {2121#(and (= main_~bufferlen~0 (+ main_~buflim~0 2)) (< 1 main_~bufferlen~0) (= main_~buf~0 0))} assume !(~buf~0 == ~buflim~0); {2134#(and (< 1 main_~bufferlen~0) (not (= main_~bufferlen~0 (+ main_~buf~0 2))) (= main_~buf~0 0))} is VALID [2018-11-19 00:05:21,858 INFO L256 TraceCheckUtils]: 13: Hoare triple {2134#(and (< 1 main_~bufferlen~0) (not (= main_~bufferlen~0 (+ main_~buf~0 2))) (= main_~buf~0 0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,859 INFO L273 TraceCheckUtils]: 14: Hoare triple {2082#true} ~cond := #in~cond; {2086#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:21,861 INFO L273 TraceCheckUtils]: 15: Hoare triple {2086#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:21,861 INFO L273 TraceCheckUtils]: 16: Hoare triple {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:21,862 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {2087#(not (= |__VERIFIER_assert_#in~cond| 0))} {2134#(and (< 1 main_~bufferlen~0) (not (= main_~bufferlen~0 (+ main_~buf~0 2))) (= main_~buf~0 0))} #75#return; {2134#(and (< 1 main_~bufferlen~0) (not (= main_~bufferlen~0 (+ main_~buf~0 2))) (= main_~buf~0 0))} is VALID [2018-11-19 00:05:21,862 INFO L256 TraceCheckUtils]: 18: Hoare triple {2134#(and (< 1 main_~bufferlen~0) (not (= main_~bufferlen~0 (+ main_~buf~0 2))) (= main_~buf~0 0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,862 INFO L273 TraceCheckUtils]: 19: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,863 INFO L273 TraceCheckUtils]: 20: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,863 INFO L273 TraceCheckUtils]: 21: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,863 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {2082#true} {2134#(and (< 1 main_~bufferlen~0) (not (= main_~bufferlen~0 (+ main_~buf~0 2))) (= main_~buf~0 0))} #77#return; {2134#(and (< 1 main_~bufferlen~0) (not (= main_~bufferlen~0 (+ main_~buf~0 2))) (= main_~buf~0 0))} is VALID [2018-11-19 00:05:21,865 INFO L273 TraceCheckUtils]: 23: Hoare triple {2134#(and (< 1 main_~bufferlen~0) (not (= main_~bufferlen~0 (+ main_~buf~0 2))) (= main_~buf~0 0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,866 INFO L273 TraceCheckUtils]: 24: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,866 INFO L256 TraceCheckUtils]: 25: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,866 INFO L273 TraceCheckUtils]: 26: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,867 INFO L273 TraceCheckUtils]: 27: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,867 INFO L273 TraceCheckUtils]: 28: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,872 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {2082#true} {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} #79#return; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,872 INFO L256 TraceCheckUtils]: 30: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,872 INFO L273 TraceCheckUtils]: 31: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,873 INFO L273 TraceCheckUtils]: 32: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,873 INFO L273 TraceCheckUtils]: 33: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,879 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {2082#true} {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} #81#return; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,879 INFO L273 TraceCheckUtils]: 35: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} assume true; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,881 INFO L273 TraceCheckUtils]: 36: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,881 INFO L273 TraceCheckUtils]: 37: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} assume !(0 != #t~nondet3);havoc #t~nondet3; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,881 INFO L256 TraceCheckUtils]: 38: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,882 INFO L273 TraceCheckUtils]: 39: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,882 INFO L273 TraceCheckUtils]: 40: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,882 INFO L273 TraceCheckUtils]: 41: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,885 INFO L268 TraceCheckUtils]: 42: Hoare quadruple {2082#true} {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} #83#return; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,886 INFO L256 TraceCheckUtils]: 43: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,886 INFO L273 TraceCheckUtils]: 44: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,886 INFO L273 TraceCheckUtils]: 45: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,886 INFO L273 TraceCheckUtils]: 46: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,887 INFO L268 TraceCheckUtils]: 47: Hoare quadruple {2082#true} {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} #85#return; {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} is VALID [2018-11-19 00:05:21,892 INFO L273 TraceCheckUtils]: 48: Hoare triple {2168#(and (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0) (<= main_~buf~0 1))} #t~post6 := ~buf~0;~buf~0 := 1 + #t~post6;havoc #t~post6; {2244#(and (<= main_~buf~0 2) (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,892 INFO L256 TraceCheckUtils]: 49: Hoare triple {2244#(and (<= main_~buf~0 2) (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2082#true} is VALID [2018-11-19 00:05:21,892 INFO L273 TraceCheckUtils]: 50: Hoare triple {2082#true} ~cond := #in~cond; {2082#true} is VALID [2018-11-19 00:05:21,892 INFO L273 TraceCheckUtils]: 51: Hoare triple {2082#true} assume !(0 == ~cond); {2082#true} is VALID [2018-11-19 00:05:21,892 INFO L273 TraceCheckUtils]: 52: Hoare triple {2082#true} assume true; {2082#true} is VALID [2018-11-19 00:05:21,894 INFO L268 TraceCheckUtils]: 53: Hoare quadruple {2082#true} {2244#(and (<= main_~buf~0 2) (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0))} #87#return; {2244#(and (<= main_~buf~0 2) (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0))} is VALID [2018-11-19 00:05:21,896 INFO L256 TraceCheckUtils]: 54: Hoare triple {2244#(and (<= main_~buf~0 2) (not (= main_~bufferlen~0 2)) (< 1 main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2263#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:21,896 INFO L273 TraceCheckUtils]: 55: Hoare triple {2263#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {2267#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-19 00:05:21,898 INFO L273 TraceCheckUtils]: 56: Hoare triple {2267#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2083#false} is VALID [2018-11-19 00:05:21,898 INFO L273 TraceCheckUtils]: 57: Hoare triple {2083#false} assume !false; {2083#false} is VALID [2018-11-19 00:05:21,901 INFO L134 CoverageAnalysis]: Checked inductivity of 101 backedges. 13 proven. 22 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2018-11-19 00:05:21,920 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-19 00:05:21,920 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 18 [2018-11-19 00:05:21,921 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 58 [2018-11-19 00:05:21,921 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:21,921 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 18 states. [2018-11-19 00:05:22,076 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:22,076 INFO L459 AbstractCegarLoop]: Interpolant automaton has 18 states [2018-11-19 00:05:22,076 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2018-11-19 00:05:22,076 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=58, Invalid=248, Unknown=0, NotChecked=0, Total=306 [2018-11-19 00:05:22,077 INFO L87 Difference]: Start difference. First operand 72 states and 84 transitions. Second operand 18 states. [2018-11-19 00:05:24,435 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:24,435 INFO L93 Difference]: Finished difference Result 112 states and 140 transitions. [2018-11-19 00:05:24,435 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2018-11-19 00:05:24,435 INFO L78 Accepts]: Start accepts. Automaton has 18 states. Word has length 58 [2018-11-19 00:05:24,436 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:24,436 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-19 00:05:24,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 119 transitions. [2018-11-19 00:05:24,441 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 18 states. [2018-11-19 00:05:24,444 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 119 transitions. [2018-11-19 00:05:24,445 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 119 transitions. [2018-11-19 00:05:24,612 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:24,615 INFO L225 Difference]: With dead ends: 112 [2018-11-19 00:05:24,615 INFO L226 Difference]: Without dead ends: 100 [2018-11-19 00:05:24,616 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 53 SyntacticMatches, 2 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 111 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=131, Invalid=469, Unknown=0, NotChecked=0, Total=600 [2018-11-19 00:05:24,616 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2018-11-19 00:05:24,792 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 100. [2018-11-19 00:05:24,793 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:24,793 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand 100 states. [2018-11-19 00:05:24,793 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand 100 states. [2018-11-19 00:05:24,793 INFO L87 Difference]: Start difference. First operand 100 states. Second operand 100 states. [2018-11-19 00:05:24,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:24,799 INFO L93 Difference]: Finished difference Result 100 states and 118 transitions. [2018-11-19 00:05:24,799 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 118 transitions. [2018-11-19 00:05:24,800 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:24,800 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:24,800 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand 100 states. [2018-11-19 00:05:24,800 INFO L87 Difference]: Start difference. First operand 100 states. Second operand 100 states. [2018-11-19 00:05:24,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:24,806 INFO L93 Difference]: Finished difference Result 100 states and 118 transitions. [2018-11-19 00:05:24,806 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 118 transitions. [2018-11-19 00:05:24,807 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:24,807 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:24,807 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:24,807 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:24,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 100 states. [2018-11-19 00:05:24,812 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 100 states to 100 states and 118 transitions. [2018-11-19 00:05:24,812 INFO L78 Accepts]: Start accepts. Automaton has 100 states and 118 transitions. Word has length 58 [2018-11-19 00:05:24,812 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:24,812 INFO L480 AbstractCegarLoop]: Abstraction has 100 states and 118 transitions. [2018-11-19 00:05:24,813 INFO L481 AbstractCegarLoop]: Interpolant automaton has 18 states. [2018-11-19 00:05:24,813 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 118 transitions. [2018-11-19 00:05:24,814 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 61 [2018-11-19 00:05:24,814 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:24,814 INFO L375 BasicCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:24,814 INFO L423 AbstractCegarLoop]: === Iteration 8 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:24,815 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:24,815 INFO L82 PathProgramCache]: Analyzing trace with hash 574589245, now seen corresponding path program 1 times [2018-11-19 00:05:24,815 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:24,815 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:24,816 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:24,816 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:24,816 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:24,829 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:25,037 INFO L256 TraceCheckUtils]: 0: Hoare triple {2791#true} call ULTIMATE.init(); {2791#true} is VALID [2018-11-19 00:05:25,037 INFO L273 TraceCheckUtils]: 1: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,038 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {2791#true} {2791#true} #71#return; {2791#true} is VALID [2018-11-19 00:05:25,038 INFO L256 TraceCheckUtils]: 3: Hoare triple {2791#true} call #t~ret8 := main(); {2791#true} is VALID [2018-11-19 00:05:25,038 INFO L273 TraceCheckUtils]: 4: Hoare triple {2791#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {2791#true} is VALID [2018-11-19 00:05:25,039 INFO L273 TraceCheckUtils]: 5: Hoare triple {2791#true} assume ~bufferlen~0 > 1; {2793#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:25,043 INFO L273 TraceCheckUtils]: 6: Hoare triple {2793#(<= 2 main_~bufferlen~0)} assume ~inlen~0 > 0; {2793#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:25,044 INFO L273 TraceCheckUtils]: 7: Hoare triple {2793#(<= 2 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {2794#(<= 3 main_~inlen~0)} is VALID [2018-11-19 00:05:25,044 INFO L273 TraceCheckUtils]: 8: Hoare triple {2794#(<= 3 main_~inlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:25,064 INFO L273 TraceCheckUtils]: 9: Hoare triple {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} assume true; {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:25,078 INFO L273 TraceCheckUtils]: 10: Hoare triple {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:25,084 INFO L273 TraceCheckUtils]: 11: Hoare triple {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:25,085 INFO L273 TraceCheckUtils]: 12: Hoare triple {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:25,085 INFO L256 TraceCheckUtils]: 13: Hoare triple {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,085 INFO L273 TraceCheckUtils]: 14: Hoare triple {2791#true} ~cond := #in~cond; {2796#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:25,086 INFO L273 TraceCheckUtils]: 15: Hoare triple {2796#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {2797#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:25,086 INFO L273 TraceCheckUtils]: 16: Hoare triple {2797#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {2797#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:25,087 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {2797#(not (= |__VERIFIER_assert_#in~cond| 0))} {2795#(and (<= (+ main_~in~0 3) main_~inlen~0) (<= 0 main_~buf~0))} #75#return; {2798#(<= (+ main_~in~0 3) main_~inlen~0)} is VALID [2018-11-19 00:05:25,087 INFO L256 TraceCheckUtils]: 18: Hoare triple {2798#(<= (+ main_~in~0 3) main_~inlen~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,087 INFO L273 TraceCheckUtils]: 19: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,088 INFO L273 TraceCheckUtils]: 20: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,088 INFO L273 TraceCheckUtils]: 21: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,089 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {2791#true} {2798#(<= (+ main_~in~0 3) main_~inlen~0)} #77#return; {2798#(<= (+ main_~in~0 3) main_~inlen~0)} is VALID [2018-11-19 00:05:25,089 INFO L273 TraceCheckUtils]: 23: Hoare triple {2798#(<= (+ main_~in~0 3) main_~inlen~0)} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {2798#(<= (+ main_~in~0 3) main_~inlen~0)} is VALID [2018-11-19 00:05:25,090 INFO L273 TraceCheckUtils]: 24: Hoare triple {2798#(<= (+ main_~in~0 3) main_~inlen~0)} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,091 INFO L256 TraceCheckUtils]: 25: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,091 INFO L273 TraceCheckUtils]: 26: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,091 INFO L273 TraceCheckUtils]: 27: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,091 INFO L273 TraceCheckUtils]: 28: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,092 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {2791#true} {2799#(<= (+ main_~in~0 2) main_~inlen~0)} #79#return; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,092 INFO L256 TraceCheckUtils]: 30: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,092 INFO L273 TraceCheckUtils]: 31: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,093 INFO L273 TraceCheckUtils]: 32: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,093 INFO L273 TraceCheckUtils]: 33: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,093 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {2791#true} {2799#(<= (+ main_~in~0 2) main_~inlen~0)} #81#return; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,093 INFO L273 TraceCheckUtils]: 35: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} assume true; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,094 INFO L273 TraceCheckUtils]: 36: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,094 INFO L273 TraceCheckUtils]: 37: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} assume !!(0 != #t~nondet3);havoc #t~nondet3; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,094 INFO L273 TraceCheckUtils]: 38: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} assume !(~buf~0 == ~buflim~0); {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,095 INFO L256 TraceCheckUtils]: 39: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,095 INFO L273 TraceCheckUtils]: 40: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,095 INFO L273 TraceCheckUtils]: 41: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,095 INFO L273 TraceCheckUtils]: 42: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,095 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {2791#true} {2799#(<= (+ main_~in~0 2) main_~inlen~0)} #75#return; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,096 INFO L256 TraceCheckUtils]: 44: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,096 INFO L273 TraceCheckUtils]: 45: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,096 INFO L273 TraceCheckUtils]: 46: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,096 INFO L273 TraceCheckUtils]: 47: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,097 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {2791#true} {2799#(<= (+ main_~in~0 2) main_~inlen~0)} #77#return; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,097 INFO L273 TraceCheckUtils]: 49: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {2799#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:25,098 INFO L273 TraceCheckUtils]: 50: Hoare triple {2799#(<= (+ main_~in~0 2) main_~inlen~0)} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {2800#(<= (+ main_~in~0 1) main_~inlen~0)} is VALID [2018-11-19 00:05:25,098 INFO L256 TraceCheckUtils]: 51: Hoare triple {2800#(<= (+ main_~in~0 1) main_~inlen~0)} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,098 INFO L273 TraceCheckUtils]: 52: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,098 INFO L273 TraceCheckUtils]: 53: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,099 INFO L273 TraceCheckUtils]: 54: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,099 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {2791#true} {2800#(<= (+ main_~in~0 1) main_~inlen~0)} #79#return; {2800#(<= (+ main_~in~0 1) main_~inlen~0)} is VALID [2018-11-19 00:05:25,100 INFO L256 TraceCheckUtils]: 56: Hoare triple {2800#(<= (+ main_~in~0 1) main_~inlen~0)} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {2797#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:25,101 INFO L273 TraceCheckUtils]: 57: Hoare triple {2797#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {2801#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-19 00:05:25,101 INFO L273 TraceCheckUtils]: 58: Hoare triple {2801#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {2792#false} is VALID [2018-11-19 00:05:25,101 INFO L273 TraceCheckUtils]: 59: Hoare triple {2792#false} assume !false; {2792#false} is VALID [2018-11-19 00:05:25,105 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 13 proven. 29 refuted. 0 times theorem prover too weak. 66 trivial. 0 not checked. [2018-11-19 00:05:25,105 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-19 00:05:25,105 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 7 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-19 00:05:25,114 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:25,130 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:25,144 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:25,145 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-19 00:05:25,362 INFO L256 TraceCheckUtils]: 0: Hoare triple {2791#true} call ULTIMATE.init(); {2791#true} is VALID [2018-11-19 00:05:25,363 INFO L273 TraceCheckUtils]: 1: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,363 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {2791#true} {2791#true} #71#return; {2791#true} is VALID [2018-11-19 00:05:25,363 INFO L256 TraceCheckUtils]: 3: Hoare triple {2791#true} call #t~ret8 := main(); {2791#true} is VALID [2018-11-19 00:05:25,364 INFO L273 TraceCheckUtils]: 4: Hoare triple {2791#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {2791#true} is VALID [2018-11-19 00:05:25,382 INFO L273 TraceCheckUtils]: 5: Hoare triple {2791#true} assume ~bufferlen~0 > 1; {2793#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:25,397 INFO L273 TraceCheckUtils]: 6: Hoare triple {2793#(<= 2 main_~bufferlen~0)} assume ~inlen~0 > 0; {2793#(<= 2 main_~bufferlen~0)} is VALID [2018-11-19 00:05:25,406 INFO L273 TraceCheckUtils]: 7: Hoare triple {2793#(<= 2 main_~bufferlen~0)} assume ~bufferlen~0 < ~inlen~0; {2794#(<= 3 main_~inlen~0)} is VALID [2018-11-19 00:05:25,419 INFO L273 TraceCheckUtils]: 8: Hoare triple {2794#(<= 3 main_~inlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,428 INFO L273 TraceCheckUtils]: 9: Hoare triple {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} assume true; {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,443 INFO L273 TraceCheckUtils]: 10: Hoare triple {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,445 INFO L273 TraceCheckUtils]: 11: Hoare triple {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,447 INFO L273 TraceCheckUtils]: 12: Hoare triple {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} assume !(~buf~0 == ~buflim~0); {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,447 INFO L256 TraceCheckUtils]: 13: Hoare triple {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,447 INFO L273 TraceCheckUtils]: 14: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,447 INFO L273 TraceCheckUtils]: 15: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,447 INFO L273 TraceCheckUtils]: 16: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,449 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {2791#true} {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} #75#return; {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,449 INFO L256 TraceCheckUtils]: 18: Hoare triple {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,449 INFO L273 TraceCheckUtils]: 19: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,449 INFO L273 TraceCheckUtils]: 20: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,449 INFO L273 TraceCheckUtils]: 21: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,450 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {2791#true} {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} #77#return; {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,451 INFO L273 TraceCheckUtils]: 23: Hoare triple {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,451 INFO L273 TraceCheckUtils]: 24: Hoare triple {2829#(and (<= main_~in~0 0) (<= 3 main_~inlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,452 INFO L256 TraceCheckUtils]: 25: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,452 INFO L273 TraceCheckUtils]: 26: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,452 INFO L273 TraceCheckUtils]: 27: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,452 INFO L273 TraceCheckUtils]: 28: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,453 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {2791#true} {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} #79#return; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,454 INFO L256 TraceCheckUtils]: 30: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,454 INFO L273 TraceCheckUtils]: 31: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,454 INFO L273 TraceCheckUtils]: 32: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,454 INFO L273 TraceCheckUtils]: 33: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,455 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {2791#true} {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} #81#return; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,455 INFO L273 TraceCheckUtils]: 35: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} assume true; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,456 INFO L273 TraceCheckUtils]: 36: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,456 INFO L273 TraceCheckUtils]: 37: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,457 INFO L273 TraceCheckUtils]: 38: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} assume !(~buf~0 == ~buflim~0); {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,457 INFO L256 TraceCheckUtils]: 39: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,457 INFO L273 TraceCheckUtils]: 40: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,457 INFO L273 TraceCheckUtils]: 41: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,457 INFO L273 TraceCheckUtils]: 42: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,458 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {2791#true} {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} #75#return; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,458 INFO L256 TraceCheckUtils]: 44: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,458 INFO L273 TraceCheckUtils]: 45: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,458 INFO L273 TraceCheckUtils]: 46: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,458 INFO L273 TraceCheckUtils]: 47: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,459 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {2791#true} {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} #77#return; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,459 INFO L273 TraceCheckUtils]: 49: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,460 INFO L273 TraceCheckUtils]: 50: Hoare triple {2878#(and (<= main_~in~0 1) (<= 3 main_~inlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {2957#(and (<= main_~in~0 2) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,460 INFO L256 TraceCheckUtils]: 51: Hoare triple {2957#(and (<= main_~in~0 2) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {2791#true} is VALID [2018-11-19 00:05:25,460 INFO L273 TraceCheckUtils]: 52: Hoare triple {2791#true} ~cond := #in~cond; {2791#true} is VALID [2018-11-19 00:05:25,460 INFO L273 TraceCheckUtils]: 53: Hoare triple {2791#true} assume !(0 == ~cond); {2791#true} is VALID [2018-11-19 00:05:25,461 INFO L273 TraceCheckUtils]: 54: Hoare triple {2791#true} assume true; {2791#true} is VALID [2018-11-19 00:05:25,461 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {2791#true} {2957#(and (<= main_~in~0 2) (<= 3 main_~inlen~0))} #79#return; {2957#(and (<= main_~in~0 2) (<= 3 main_~inlen~0))} is VALID [2018-11-19 00:05:25,462 INFO L256 TraceCheckUtils]: 56: Hoare triple {2957#(and (<= main_~in~0 2) (<= 3 main_~inlen~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {2976#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:25,463 INFO L273 TraceCheckUtils]: 57: Hoare triple {2976#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {2980#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-19 00:05:25,463 INFO L273 TraceCheckUtils]: 58: Hoare triple {2980#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2792#false} is VALID [2018-11-19 00:05:25,463 INFO L273 TraceCheckUtils]: 59: Hoare triple {2792#false} assume !false; {2792#false} is VALID [2018-11-19 00:05:25,466 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 10 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2018-11-19 00:05:25,485 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-19 00:05:25,485 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 16 [2018-11-19 00:05:25,485 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 60 [2018-11-19 00:05:25,486 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:25,486 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 16 states. [2018-11-19 00:05:25,575 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:25,576 INFO L459 AbstractCegarLoop]: Interpolant automaton has 16 states [2018-11-19 00:05:25,576 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2018-11-19 00:05:25,576 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=191, Unknown=0, NotChecked=0, Total=240 [2018-11-19 00:05:25,577 INFO L87 Difference]: Start difference. First operand 100 states and 118 transitions. Second operand 16 states. [2018-11-19 00:05:27,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:27,337 INFO L93 Difference]: Finished difference Result 106 states and 123 transitions. [2018-11-19 00:05:27,337 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2018-11-19 00:05:27,337 INFO L78 Accepts]: Start accepts. Automaton has 16 states. Word has length 60 [2018-11-19 00:05:27,337 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:27,338 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-19 00:05:27,340 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 81 transitions. [2018-11-19 00:05:27,340 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 16 states. [2018-11-19 00:05:27,342 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 81 transitions. [2018-11-19 00:05:27,342 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 81 transitions. [2018-11-19 00:05:27,458 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 81 edges. 81 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:27,462 INFO L225 Difference]: With dead ends: 106 [2018-11-19 00:05:27,462 INFO L226 Difference]: Without dead ends: 104 [2018-11-19 00:05:27,463 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 78 GetRequests, 56 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 76 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=106, Invalid=400, Unknown=0, NotChecked=0, Total=506 [2018-11-19 00:05:27,463 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 104 states. [2018-11-19 00:05:27,615 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 104 to 104. [2018-11-19 00:05:27,616 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:27,616 INFO L82 GeneralOperation]: Start isEquivalent. First operand 104 states. Second operand 104 states. [2018-11-19 00:05:27,616 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand 104 states. [2018-11-19 00:05:27,616 INFO L87 Difference]: Start difference. First operand 104 states. Second operand 104 states. [2018-11-19 00:05:27,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:27,622 INFO L93 Difference]: Finished difference Result 104 states and 121 transitions. [2018-11-19 00:05:27,622 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 121 transitions. [2018-11-19 00:05:27,622 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:27,622 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:27,623 INFO L74 IsIncluded]: Start isIncluded. First operand 104 states. Second operand 104 states. [2018-11-19 00:05:27,623 INFO L87 Difference]: Start difference. First operand 104 states. Second operand 104 states. [2018-11-19 00:05:27,627 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:27,627 INFO L93 Difference]: Finished difference Result 104 states and 121 transitions. [2018-11-19 00:05:27,627 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 121 transitions. [2018-11-19 00:05:27,628 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:27,628 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:27,628 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:27,628 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:27,628 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 104 states. [2018-11-19 00:05:27,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 104 states to 104 states and 121 transitions. [2018-11-19 00:05:27,632 INFO L78 Accepts]: Start accepts. Automaton has 104 states and 121 transitions. Word has length 60 [2018-11-19 00:05:27,633 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:27,633 INFO L480 AbstractCegarLoop]: Abstraction has 104 states and 121 transitions. [2018-11-19 00:05:27,633 INFO L481 AbstractCegarLoop]: Interpolant automaton has 16 states. [2018-11-19 00:05:27,633 INFO L276 IsEmpty]: Start isEmpty. Operand 104 states and 121 transitions. [2018-11-19 00:05:27,634 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2018-11-19 00:05:27,634 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:27,634 INFO L375 BasicCegarLoop]: trace histogram [12, 11, 11, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:27,634 INFO L423 AbstractCegarLoop]: === Iteration 9 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:27,635 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:27,635 INFO L82 PathProgramCache]: Analyzing trace with hash -1079113108, now seen corresponding path program 2 times [2018-11-19 00:05:27,635 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:27,635 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:27,636 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:27,636 INFO L103 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2018-11-19 00:05:27,636 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:27,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:27,859 INFO L256 TraceCheckUtils]: 0: Hoare triple {3504#true} call ULTIMATE.init(); {3504#true} is VALID [2018-11-19 00:05:27,860 INFO L273 TraceCheckUtils]: 1: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,860 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {3504#true} {3504#true} #71#return; {3504#true} is VALID [2018-11-19 00:05:27,860 INFO L256 TraceCheckUtils]: 3: Hoare triple {3504#true} call #t~ret8 := main(); {3504#true} is VALID [2018-11-19 00:05:27,860 INFO L273 TraceCheckUtils]: 4: Hoare triple {3504#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {3504#true} is VALID [2018-11-19 00:05:27,860 INFO L273 TraceCheckUtils]: 5: Hoare triple {3504#true} assume ~bufferlen~0 > 1; {3504#true} is VALID [2018-11-19 00:05:27,860 INFO L273 TraceCheckUtils]: 6: Hoare triple {3504#true} assume ~inlen~0 > 0; {3504#true} is VALID [2018-11-19 00:05:27,861 INFO L273 TraceCheckUtils]: 7: Hoare triple {3504#true} assume ~bufferlen~0 < ~inlen~0; {3506#(<= (+ main_~bufferlen~0 1) main_~inlen~0)} is VALID [2018-11-19 00:05:27,861 INFO L273 TraceCheckUtils]: 8: Hoare triple {3506#(<= (+ main_~bufferlen~0 1) main_~inlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:27,862 INFO L273 TraceCheckUtils]: 9: Hoare triple {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} assume true; {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:27,862 INFO L273 TraceCheckUtils]: 10: Hoare triple {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:27,863 INFO L273 TraceCheckUtils]: 11: Hoare triple {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:27,863 INFO L273 TraceCheckUtils]: 12: Hoare triple {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} is VALID [2018-11-19 00:05:27,863 INFO L256 TraceCheckUtils]: 13: Hoare triple {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,877 INFO L273 TraceCheckUtils]: 14: Hoare triple {3504#true} ~cond := #in~cond; {3508#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:27,878 INFO L273 TraceCheckUtils]: 15: Hoare triple {3508#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:27,878 INFO L273 TraceCheckUtils]: 16: Hoare triple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:27,880 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} {3507#(and (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= 0 main_~buf~0))} #75#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,880 INFO L256 TraceCheckUtils]: 18: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,880 INFO L273 TraceCheckUtils]: 19: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,880 INFO L273 TraceCheckUtils]: 20: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,880 INFO L273 TraceCheckUtils]: 21: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,881 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {3504#true} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #77#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,882 INFO L273 TraceCheckUtils]: 23: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {3511#(<= (+ main_~in~0 main_~bufferlen~0 2) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,882 INFO L273 TraceCheckUtils]: 24: Hoare triple {3511#(<= (+ main_~in~0 main_~bufferlen~0 2) (+ main_~buf~0 main_~inlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,882 INFO L256 TraceCheckUtils]: 25: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,882 INFO L273 TraceCheckUtils]: 26: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,883 INFO L273 TraceCheckUtils]: 27: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,883 INFO L273 TraceCheckUtils]: 28: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,884 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {3504#true} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #79#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,884 INFO L256 TraceCheckUtils]: 30: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,884 INFO L273 TraceCheckUtils]: 31: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,884 INFO L273 TraceCheckUtils]: 32: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,885 INFO L273 TraceCheckUtils]: 33: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,886 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {3504#true} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #81#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,886 INFO L273 TraceCheckUtils]: 35: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} assume true; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,886 INFO L273 TraceCheckUtils]: 36: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,887 INFO L273 TraceCheckUtils]: 37: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,887 INFO L273 TraceCheckUtils]: 38: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} assume !(~buf~0 == ~buflim~0); {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,887 INFO L256 TraceCheckUtils]: 39: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,887 INFO L273 TraceCheckUtils]: 40: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,888 INFO L273 TraceCheckUtils]: 41: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,888 INFO L273 TraceCheckUtils]: 42: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,895 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {3504#true} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #75#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,895 INFO L256 TraceCheckUtils]: 44: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,895 INFO L273 TraceCheckUtils]: 45: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,896 INFO L273 TraceCheckUtils]: 46: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,896 INFO L273 TraceCheckUtils]: 47: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,899 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {3504#true} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #77#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,899 INFO L273 TraceCheckUtils]: 49: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {3511#(<= (+ main_~in~0 main_~bufferlen~0 2) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,900 INFO L273 TraceCheckUtils]: 50: Hoare triple {3511#(<= (+ main_~in~0 main_~bufferlen~0 2) (+ main_~buf~0 main_~inlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,900 INFO L256 TraceCheckUtils]: 51: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,900 INFO L273 TraceCheckUtils]: 52: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,900 INFO L273 TraceCheckUtils]: 53: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,900 INFO L273 TraceCheckUtils]: 54: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,901 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {3504#true} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #79#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,901 INFO L256 TraceCheckUtils]: 56: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,901 INFO L273 TraceCheckUtils]: 57: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,901 INFO L273 TraceCheckUtils]: 58: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,902 INFO L273 TraceCheckUtils]: 59: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,903 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {3504#true} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #81#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,903 INFO L273 TraceCheckUtils]: 61: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} assume true; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,904 INFO L273 TraceCheckUtils]: 62: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,904 INFO L273 TraceCheckUtils]: 63: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,904 INFO L273 TraceCheckUtils]: 64: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} assume !(~buf~0 == ~buflim~0); {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,904 INFO L256 TraceCheckUtils]: 65: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,904 INFO L273 TraceCheckUtils]: 66: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,905 INFO L273 TraceCheckUtils]: 67: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,905 INFO L273 TraceCheckUtils]: 68: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,905 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {3504#true} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #75#return; {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} is VALID [2018-11-19 00:05:27,905 INFO L256 TraceCheckUtils]: 70: Hoare triple {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,906 INFO L273 TraceCheckUtils]: 71: Hoare triple {3504#true} ~cond := #in~cond; {3508#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:27,906 INFO L273 TraceCheckUtils]: 72: Hoare triple {3508#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:27,907 INFO L273 TraceCheckUtils]: 73: Hoare triple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:27,908 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} {3510#(<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0))} #77#return; {3512#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:27,909 INFO L273 TraceCheckUtils]: 75: Hoare triple {3512#(<= (+ main_~in~0 2) main_~inlen~0)} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {3512#(<= (+ main_~in~0 2) main_~inlen~0)} is VALID [2018-11-19 00:05:27,910 INFO L273 TraceCheckUtils]: 76: Hoare triple {3512#(<= (+ main_~in~0 2) main_~inlen~0)} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {3513#(<= (+ main_~in~0 1) main_~inlen~0)} is VALID [2018-11-19 00:05:27,910 INFO L256 TraceCheckUtils]: 77: Hoare triple {3513#(<= (+ main_~in~0 1) main_~inlen~0)} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:27,910 INFO L273 TraceCheckUtils]: 78: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:27,910 INFO L273 TraceCheckUtils]: 79: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:27,910 INFO L273 TraceCheckUtils]: 80: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:27,911 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {3504#true} {3513#(<= (+ main_~in~0 1) main_~inlen~0)} #79#return; {3513#(<= (+ main_~in~0 1) main_~inlen~0)} is VALID [2018-11-19 00:05:27,912 INFO L256 TraceCheckUtils]: 82: Hoare triple {3513#(<= (+ main_~in~0 1) main_~inlen~0)} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:27,912 INFO L273 TraceCheckUtils]: 83: Hoare triple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {3514#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-19 00:05:27,913 INFO L273 TraceCheckUtils]: 84: Hoare triple {3514#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {3505#false} is VALID [2018-11-19 00:05:27,913 INFO L273 TraceCheckUtils]: 85: Hoare triple {3505#false} assume !false; {3505#false} is VALID [2018-11-19 00:05:27,919 INFO L134 CoverageAnalysis]: Checked inductivity of 272 backedges. 44 proven. 50 refuted. 0 times theorem prover too weak. 178 trivial. 0 not checked. [2018-11-19 00:05:27,919 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-19 00:05:27,920 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 8 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-19 00:05:27,928 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-19 00:05:27,966 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-19 00:05:27,966 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-19 00:05:28,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:28,005 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-19 00:05:28,617 INFO L256 TraceCheckUtils]: 0: Hoare triple {3504#true} call ULTIMATE.init(); {3504#true} is VALID [2018-11-19 00:05:28,617 INFO L273 TraceCheckUtils]: 1: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,618 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {3504#true} {3504#true} #71#return; {3504#true} is VALID [2018-11-19 00:05:28,618 INFO L256 TraceCheckUtils]: 3: Hoare triple {3504#true} call #t~ret8 := main(); {3504#true} is VALID [2018-11-19 00:05:28,618 INFO L273 TraceCheckUtils]: 4: Hoare triple {3504#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {3504#true} is VALID [2018-11-19 00:05:28,618 INFO L273 TraceCheckUtils]: 5: Hoare triple {3504#true} assume ~bufferlen~0 > 1; {3504#true} is VALID [2018-11-19 00:05:28,619 INFO L273 TraceCheckUtils]: 6: Hoare triple {3504#true} assume ~inlen~0 > 0; {3504#true} is VALID [2018-11-19 00:05:28,619 INFO L273 TraceCheckUtils]: 7: Hoare triple {3504#true} assume ~bufferlen~0 < ~inlen~0; {3506#(<= (+ main_~bufferlen~0 1) main_~inlen~0)} is VALID [2018-11-19 00:05:28,620 INFO L273 TraceCheckUtils]: 8: Hoare triple {3506#(<= (+ main_~bufferlen~0 1) main_~inlen~0)} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} is VALID [2018-11-19 00:05:28,620 INFO L273 TraceCheckUtils]: 9: Hoare triple {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} assume true; {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} is VALID [2018-11-19 00:05:28,621 INFO L273 TraceCheckUtils]: 10: Hoare triple {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} is VALID [2018-11-19 00:05:28,621 INFO L273 TraceCheckUtils]: 11: Hoare triple {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} is VALID [2018-11-19 00:05:28,622 INFO L273 TraceCheckUtils]: 12: Hoare triple {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} assume !(~buf~0 == ~buflim~0); {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} is VALID [2018-11-19 00:05:28,622 INFO L256 TraceCheckUtils]: 13: Hoare triple {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,622 INFO L273 TraceCheckUtils]: 14: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,622 INFO L273 TraceCheckUtils]: 15: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,622 INFO L273 TraceCheckUtils]: 16: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,628 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {3504#true} {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} #75#return; {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} is VALID [2018-11-19 00:05:28,629 INFO L256 TraceCheckUtils]: 18: Hoare triple {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,629 INFO L273 TraceCheckUtils]: 19: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,629 INFO L273 TraceCheckUtils]: 20: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,629 INFO L273 TraceCheckUtils]: 21: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,632 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {3504#true} {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} #77#return; {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} is VALID [2018-11-19 00:05:28,632 INFO L273 TraceCheckUtils]: 23: Hoare triple {3542#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 0 main_~buf~0) (<= main_~in~0 0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {3588#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0) (<= main_~in~0 0))} is VALID [2018-11-19 00:05:28,633 INFO L273 TraceCheckUtils]: 24: Hoare triple {3588#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0) (<= main_~in~0 0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,633 INFO L256 TraceCheckUtils]: 25: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,633 INFO L273 TraceCheckUtils]: 26: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,633 INFO L273 TraceCheckUtils]: 27: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,634 INFO L273 TraceCheckUtils]: 28: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,634 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {3504#true} {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} #79#return; {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,635 INFO L256 TraceCheckUtils]: 30: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,635 INFO L273 TraceCheckUtils]: 31: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,635 INFO L273 TraceCheckUtils]: 32: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,635 INFO L273 TraceCheckUtils]: 33: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,636 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {3504#true} {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} #81#return; {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,636 INFO L273 TraceCheckUtils]: 35: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} assume true; {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,637 INFO L273 TraceCheckUtils]: 36: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,637 INFO L273 TraceCheckUtils]: 37: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,638 INFO L273 TraceCheckUtils]: 38: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,638 INFO L256 TraceCheckUtils]: 39: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,638 INFO L273 TraceCheckUtils]: 40: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,638 INFO L273 TraceCheckUtils]: 41: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,638 INFO L273 TraceCheckUtils]: 42: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,639 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {3504#true} {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} #75#return; {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,639 INFO L256 TraceCheckUtils]: 44: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,639 INFO L273 TraceCheckUtils]: 45: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,640 INFO L273 TraceCheckUtils]: 46: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,640 INFO L273 TraceCheckUtils]: 47: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,641 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {3504#true} {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} #77#return; {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:28,642 INFO L273 TraceCheckUtils]: 49: Hoare triple {3592#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 1 main_~buf~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {3668#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,643 INFO L273 TraceCheckUtils]: 50: Hoare triple {3668#(and (<= main_~in~0 1) (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= 2 main_~buf~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,643 INFO L256 TraceCheckUtils]: 51: Hoare triple {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,644 INFO L273 TraceCheckUtils]: 52: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,644 INFO L273 TraceCheckUtils]: 53: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,644 INFO L273 TraceCheckUtils]: 54: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,645 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {3504#true} {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} #79#return; {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,646 INFO L256 TraceCheckUtils]: 56: Hoare triple {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,646 INFO L273 TraceCheckUtils]: 57: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,646 INFO L273 TraceCheckUtils]: 58: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,646 INFO L273 TraceCheckUtils]: 59: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,647 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {3504#true} {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} #81#return; {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,648 INFO L273 TraceCheckUtils]: 61: Hoare triple {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} assume true; {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,648 INFO L273 TraceCheckUtils]: 62: Hoare triple {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,649 INFO L273 TraceCheckUtils]: 63: Hoare triple {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,649 INFO L273 TraceCheckUtils]: 64: Hoare triple {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,649 INFO L256 TraceCheckUtils]: 65: Hoare triple {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,668 INFO L273 TraceCheckUtils]: 66: Hoare triple {3504#true} ~cond := #in~cond; {3508#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:28,672 INFO L273 TraceCheckUtils]: 67: Hoare triple {3508#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:28,673 INFO L273 TraceCheckUtils]: 68: Hoare triple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:28,674 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} #75#return; {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:28,674 INFO L256 TraceCheckUtils]: 70: Hoare triple {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,674 INFO L273 TraceCheckUtils]: 71: Hoare triple {3504#true} ~cond := #in~cond; {3508#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:28,675 INFO L273 TraceCheckUtils]: 72: Hoare triple {3508#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:28,675 INFO L273 TraceCheckUtils]: 73: Hoare triple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:28,676 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {3509#(not (= |__VERIFIER_assert_#in~cond| 0))} {3672#(and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= main_~in~0 2) (<= 2 main_~buf~0))} #77#return; {3745#(and (<= main_~in~0 2) (<= 4 main_~inlen~0))} is VALID [2018-11-19 00:05:28,677 INFO L273 TraceCheckUtils]: 75: Hoare triple {3745#(and (<= main_~in~0 2) (<= 4 main_~inlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {3745#(and (<= main_~in~0 2) (<= 4 main_~inlen~0))} is VALID [2018-11-19 00:05:28,678 INFO L273 TraceCheckUtils]: 76: Hoare triple {3745#(and (<= main_~in~0 2) (<= 4 main_~inlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {3752#(and (<= 4 main_~inlen~0) (<= main_~in~0 3))} is VALID [2018-11-19 00:05:28,678 INFO L256 TraceCheckUtils]: 77: Hoare triple {3752#(and (<= 4 main_~inlen~0) (<= main_~in~0 3))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {3504#true} is VALID [2018-11-19 00:05:28,678 INFO L273 TraceCheckUtils]: 78: Hoare triple {3504#true} ~cond := #in~cond; {3504#true} is VALID [2018-11-19 00:05:28,679 INFO L273 TraceCheckUtils]: 79: Hoare triple {3504#true} assume !(0 == ~cond); {3504#true} is VALID [2018-11-19 00:05:28,679 INFO L273 TraceCheckUtils]: 80: Hoare triple {3504#true} assume true; {3504#true} is VALID [2018-11-19 00:05:28,682 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {3504#true} {3752#(and (<= 4 main_~inlen~0) (<= main_~in~0 3))} #79#return; {3752#(and (<= 4 main_~inlen~0) (<= main_~in~0 3))} is VALID [2018-11-19 00:05:28,683 INFO L256 TraceCheckUtils]: 82: Hoare triple {3752#(and (<= 4 main_~inlen~0) (<= main_~in~0 3))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {3771#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:28,683 INFO L273 TraceCheckUtils]: 83: Hoare triple {3771#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {3775#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-19 00:05:28,684 INFO L273 TraceCheckUtils]: 84: Hoare triple {3775#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3505#false} is VALID [2018-11-19 00:05:28,684 INFO L273 TraceCheckUtils]: 85: Hoare triple {3505#false} assume !false; {3505#false} is VALID [2018-11-19 00:05:28,697 INFO L134 CoverageAnalysis]: Checked inductivity of 272 backedges. 68 proven. 38 refuted. 0 times theorem prover too weak. 166 trivial. 0 not checked. [2018-11-19 00:05:28,716 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-19 00:05:28,716 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 14] total 20 [2018-11-19 00:05:28,717 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 86 [2018-11-19 00:05:28,718 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:28,718 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-19 00:05:28,827 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:28,828 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-19 00:05:28,828 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-19 00:05:28,828 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=67, Invalid=313, Unknown=0, NotChecked=0, Total=380 [2018-11-19 00:05:28,829 INFO L87 Difference]: Start difference. First operand 104 states and 121 transitions. Second operand 20 states. [2018-11-19 00:05:32,294 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:32,294 INFO L93 Difference]: Finished difference Result 115 states and 132 transitions. [2018-11-19 00:05:32,294 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2018-11-19 00:05:32,294 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 86 [2018-11-19 00:05:32,295 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:32,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-19 00:05:32,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 105 transitions. [2018-11-19 00:05:32,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-19 00:05:32,301 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 105 transitions. [2018-11-19 00:05:32,302 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 22 states and 105 transitions. [2018-11-19 00:05:32,454 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:32,458 INFO L225 Difference]: With dead ends: 115 [2018-11-19 00:05:32,458 INFO L226 Difference]: Without dead ends: 113 [2018-11-19 00:05:32,459 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 118 GetRequests, 80 SyntacticMatches, 4 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 289 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=242, Invalid=1018, Unknown=0, NotChecked=0, Total=1260 [2018-11-19 00:05:32,459 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 113 states. [2018-11-19 00:05:32,713 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 113 to 108. [2018-11-19 00:05:32,713 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:32,713 INFO L82 GeneralOperation]: Start isEquivalent. First operand 113 states. Second operand 108 states. [2018-11-19 00:05:32,713 INFO L74 IsIncluded]: Start isIncluded. First operand 113 states. Second operand 108 states. [2018-11-19 00:05:32,713 INFO L87 Difference]: Start difference. First operand 113 states. Second operand 108 states. [2018-11-19 00:05:32,719 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:32,719 INFO L93 Difference]: Finished difference Result 113 states and 130 transitions. [2018-11-19 00:05:32,719 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 130 transitions. [2018-11-19 00:05:32,720 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:32,720 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:32,720 INFO L74 IsIncluded]: Start isIncluded. First operand 108 states. Second operand 113 states. [2018-11-19 00:05:32,720 INFO L87 Difference]: Start difference. First operand 108 states. Second operand 113 states. [2018-11-19 00:05:32,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:32,724 INFO L93 Difference]: Finished difference Result 113 states and 130 transitions. [2018-11-19 00:05:32,724 INFO L276 IsEmpty]: Start isEmpty. Operand 113 states and 130 transitions. [2018-11-19 00:05:32,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:32,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:32,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:32,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:32,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 108 states. [2018-11-19 00:05:32,728 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 108 states to 108 states and 124 transitions. [2018-11-19 00:05:32,729 INFO L78 Accepts]: Start accepts. Automaton has 108 states and 124 transitions. Word has length 86 [2018-11-19 00:05:32,729 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:32,729 INFO L480 AbstractCegarLoop]: Abstraction has 108 states and 124 transitions. [2018-11-19 00:05:32,729 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-19 00:05:32,729 INFO L276 IsEmpty]: Start isEmpty. Operand 108 states and 124 transitions. [2018-11-19 00:05:32,731 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 111 [2018-11-19 00:05:32,731 INFO L367 BasicCegarLoop]: Found error trace [2018-11-19 00:05:32,731 INFO L375 BasicCegarLoop]: trace histogram [16, 15, 15, 4, 4, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2018-11-19 00:05:32,731 INFO L423 AbstractCegarLoop]: === Iteration 10 === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION]=== [2018-11-19 00:05:32,731 INFO L141 PredicateUnifier]: Initialized classic predicate unifier [2018-11-19 00:05:32,732 INFO L82 PathProgramCache]: Analyzing trace with hash -795584450, now seen corresponding path program 2 times [2018-11-19 00:05:32,732 INFO L223 ckRefinementStrategy]: Switched to mode SMTINTERPOL_TREE_INTERPOLANTS [2018-11-19 00:05:32,732 INFO L69 tionRefinementEngine]: Using refinement strategy CamelRefinementStrategy [2018-11-19 00:05:32,732 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:32,733 INFO L101 rtionOrderModulation]: Changing assertion order to NOT_INCREMENTALLY [2018-11-19 00:05:32,733 INFO L119 rtionOrderModulation]: Craig_TreeInterpolation forces the order to NOT_INCREMENTALLY [2018-11-19 00:05:32,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:33,254 INFO L256 TraceCheckUtils]: 0: Hoare triple {4352#true} call ULTIMATE.init(); {4352#true} is VALID [2018-11-19 00:05:33,255 INFO L273 TraceCheckUtils]: 1: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,255 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {4352#true} {4352#true} #71#return; {4352#true} is VALID [2018-11-19 00:05:33,255 INFO L256 TraceCheckUtils]: 3: Hoare triple {4352#true} call #t~ret8 := main(); {4352#true} is VALID [2018-11-19 00:05:33,255 INFO L273 TraceCheckUtils]: 4: Hoare triple {4352#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {4352#true} is VALID [2018-11-19 00:05:33,256 INFO L273 TraceCheckUtils]: 5: Hoare triple {4352#true} assume ~bufferlen~0 > 1; {4352#true} is VALID [2018-11-19 00:05:33,256 INFO L273 TraceCheckUtils]: 6: Hoare triple {4352#true} assume ~inlen~0 > 0; {4352#true} is VALID [2018-11-19 00:05:33,256 INFO L273 TraceCheckUtils]: 7: Hoare triple {4352#true} assume ~bufferlen~0 < ~inlen~0; {4352#true} is VALID [2018-11-19 00:05:33,257 INFO L273 TraceCheckUtils]: 8: Hoare triple {4352#true} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,258 INFO L273 TraceCheckUtils]: 9: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume true; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,258 INFO L273 TraceCheckUtils]: 10: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,258 INFO L273 TraceCheckUtils]: 11: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,259 INFO L273 TraceCheckUtils]: 12: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume !(~buf~0 == ~buflim~0); {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,259 INFO L256 TraceCheckUtils]: 13: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,259 INFO L273 TraceCheckUtils]: 14: Hoare triple {4352#true} ~cond := #in~cond; {4355#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:33,260 INFO L273 TraceCheckUtils]: 15: Hoare triple {4355#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,260 INFO L273 TraceCheckUtils]: 16: Hoare triple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,262 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #75#return; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,262 INFO L256 TraceCheckUtils]: 18: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,262 INFO L273 TraceCheckUtils]: 19: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,263 INFO L273 TraceCheckUtils]: 20: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,263 INFO L273 TraceCheckUtils]: 21: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,265 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {4352#true} {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #77#return; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,265 INFO L273 TraceCheckUtils]: 23: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,265 INFO L273 TraceCheckUtils]: 24: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,266 INFO L256 TraceCheckUtils]: 25: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,266 INFO L273 TraceCheckUtils]: 26: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,266 INFO L273 TraceCheckUtils]: 27: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,266 INFO L273 TraceCheckUtils]: 28: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,267 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {4352#true} {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #79#return; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,267 INFO L256 TraceCheckUtils]: 30: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,267 INFO L273 TraceCheckUtils]: 31: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,267 INFO L273 TraceCheckUtils]: 32: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,268 INFO L273 TraceCheckUtils]: 33: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,268 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {4352#true} {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #81#return; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,269 INFO L273 TraceCheckUtils]: 35: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume true; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,269 INFO L273 TraceCheckUtils]: 36: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,269 INFO L273 TraceCheckUtils]: 37: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,270 INFO L273 TraceCheckUtils]: 38: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume !(~buf~0 == ~buflim~0); {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,270 INFO L256 TraceCheckUtils]: 39: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,270 INFO L273 TraceCheckUtils]: 40: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,270 INFO L273 TraceCheckUtils]: 41: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,270 INFO L273 TraceCheckUtils]: 42: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,271 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {4352#true} {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #75#return; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,271 INFO L256 TraceCheckUtils]: 44: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,271 INFO L273 TraceCheckUtils]: 45: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,271 INFO L273 TraceCheckUtils]: 46: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,272 INFO L273 TraceCheckUtils]: 47: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,272 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {4352#true} {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #77#return; {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,273 INFO L273 TraceCheckUtils]: 49: Hoare triple {4357#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} is VALID [2018-11-19 00:05:33,274 INFO L273 TraceCheckUtils]: 50: Hoare triple {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} is VALID [2018-11-19 00:05:33,274 INFO L256 TraceCheckUtils]: 51: Hoare triple {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,274 INFO L273 TraceCheckUtils]: 52: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,275 INFO L273 TraceCheckUtils]: 53: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,275 INFO L273 TraceCheckUtils]: 54: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,276 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {4352#true} {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} #79#return; {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} is VALID [2018-11-19 00:05:33,276 INFO L256 TraceCheckUtils]: 56: Hoare triple {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,276 INFO L273 TraceCheckUtils]: 57: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,277 INFO L273 TraceCheckUtils]: 58: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,277 INFO L273 TraceCheckUtils]: 59: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,277 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {4352#true} {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} #81#return; {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} is VALID [2018-11-19 00:05:33,278 INFO L273 TraceCheckUtils]: 61: Hoare triple {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} assume true; {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} is VALID [2018-11-19 00:05:33,278 INFO L273 TraceCheckUtils]: 62: Hoare triple {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} is VALID [2018-11-19 00:05:33,279 INFO L273 TraceCheckUtils]: 63: Hoare triple {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} is VALID [2018-11-19 00:05:33,279 INFO L273 TraceCheckUtils]: 64: Hoare triple {4358#(and (or (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (< main_~buf~0 (+ main_~buflim~0 1))) (or (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= main_~buflim~0 main_~buf~0)))} assume !(~buf~0 == ~buflim~0); {4359#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,280 INFO L256 TraceCheckUtils]: 65: Hoare triple {4359#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,280 INFO L273 TraceCheckUtils]: 66: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,280 INFO L273 TraceCheckUtils]: 67: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,280 INFO L273 TraceCheckUtils]: 68: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,280 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {4352#true} {4359#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} #75#return; {4359#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,281 INFO L256 TraceCheckUtils]: 70: Hoare triple {4359#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,281 INFO L273 TraceCheckUtils]: 71: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,281 INFO L273 TraceCheckUtils]: 72: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,281 INFO L273 TraceCheckUtils]: 73: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,282 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {4352#true} {4359#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} #77#return; {4359#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,283 INFO L273 TraceCheckUtils]: 75: Hoare triple {4359#(or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,283 INFO L273 TraceCheckUtils]: 76: Hoare triple {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,283 INFO L256 TraceCheckUtils]: 77: Hoare triple {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,283 INFO L273 TraceCheckUtils]: 78: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,284 INFO L273 TraceCheckUtils]: 79: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,284 INFO L273 TraceCheckUtils]: 80: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,284 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {4352#true} {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #79#return; {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,284 INFO L256 TraceCheckUtils]: 82: Hoare triple {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,285 INFO L273 TraceCheckUtils]: 83: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,285 INFO L273 TraceCheckUtils]: 84: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,285 INFO L273 TraceCheckUtils]: 85: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,285 INFO L268 TraceCheckUtils]: 86: Hoare quadruple {4352#true} {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #81#return; {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,286 INFO L273 TraceCheckUtils]: 87: Hoare triple {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume true; {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,286 INFO L273 TraceCheckUtils]: 88: Hoare triple {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,287 INFO L273 TraceCheckUtils]: 89: Hoare triple {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} assume !(0 != #t~nondet3);havoc #t~nondet3; {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,287 INFO L256 TraceCheckUtils]: 90: Hoare triple {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,287 INFO L273 TraceCheckUtils]: 91: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,288 INFO L273 TraceCheckUtils]: 92: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,288 INFO L273 TraceCheckUtils]: 93: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,317 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {4352#true} {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #83#return; {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,317 INFO L256 TraceCheckUtils]: 95: Hoare triple {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,327 INFO L273 TraceCheckUtils]: 96: Hoare triple {4352#true} ~cond := #in~cond; {4355#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:33,328 INFO L273 TraceCheckUtils]: 97: Hoare triple {4355#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,328 INFO L273 TraceCheckUtils]: 98: Hoare triple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,329 INFO L268 TraceCheckUtils]: 99: Hoare quadruple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} {4360#(or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #85#return; {4361#(<= (+ main_~buf~0 2) main_~bufferlen~0)} is VALID [2018-11-19 00:05:33,330 INFO L273 TraceCheckUtils]: 100: Hoare triple {4361#(<= (+ main_~buf~0 2) main_~bufferlen~0)} #t~post6 := ~buf~0;~buf~0 := 1 + #t~post6;havoc #t~post6; {4362#(<= (+ main_~buf~0 1) main_~bufferlen~0)} is VALID [2018-11-19 00:05:33,330 INFO L256 TraceCheckUtils]: 101: Hoare triple {4362#(<= (+ main_~buf~0 1) main_~bufferlen~0)} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,330 INFO L273 TraceCheckUtils]: 102: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,330 INFO L273 TraceCheckUtils]: 103: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,330 INFO L273 TraceCheckUtils]: 104: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,331 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {4352#true} {4362#(<= (+ main_~buf~0 1) main_~bufferlen~0)} #87#return; {4362#(<= (+ main_~buf~0 1) main_~bufferlen~0)} is VALID [2018-11-19 00:05:33,331 INFO L256 TraceCheckUtils]: 106: Hoare triple {4362#(<= (+ main_~buf~0 1) main_~bufferlen~0)} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,349 INFO L273 TraceCheckUtils]: 107: Hoare triple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {4363#(not (= __VERIFIER_assert_~cond 0))} is VALID [2018-11-19 00:05:33,357 INFO L273 TraceCheckUtils]: 108: Hoare triple {4363#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {4353#false} is VALID [2018-11-19 00:05:33,358 INFO L273 TraceCheckUtils]: 109: Hoare triple {4353#false} assume !false; {4353#false} is VALID [2018-11-19 00:05:33,374 INFO L134 CoverageAnalysis]: Checked inductivity of 489 backedges. 64 proven. 81 refuted. 0 times theorem prover too weak. 344 trivial. 0 not checked. [2018-11-19 00:05:33,374 INFO L300 seRefinementStrategy]: The current sequences of interpolants are not accepted, trying to find more. [2018-11-19 00:05:33,374 INFO L223 ckRefinementStrategy]: Switched to mode Z3_FP No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 Starting monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 (exit command is (exit), workingDir is null) Waiting until toolchain timeout for monitored process 9 with z3 -smt2 -in SMTLIB2_COMPLIANT=true -t:12000 [2018-11-19 00:05:33,394 INFO L103 rtionOrderModulation]: Keeping assertion order OUTSIDE_LOOP_FIRST1 [2018-11-19 00:05:33,431 INFO L249 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2018-11-19 00:05:33,432 INFO L250 tOrderPrioritization]: Conjunction of SSA is unsat [2018-11-19 00:05:33,450 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2018-11-19 00:05:33,453 INFO L273 TraceCheckSpWp]: Computing forward predicates... [2018-11-19 00:05:33,941 INFO L256 TraceCheckUtils]: 0: Hoare triple {4352#true} call ULTIMATE.init(); {4352#true} is VALID [2018-11-19 00:05:33,942 INFO L273 TraceCheckUtils]: 1: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,942 INFO L268 TraceCheckUtils]: 2: Hoare quadruple {4352#true} {4352#true} #71#return; {4352#true} is VALID [2018-11-19 00:05:33,942 INFO L256 TraceCheckUtils]: 3: Hoare triple {4352#true} call #t~ret8 := main(); {4352#true} is VALID [2018-11-19 00:05:33,942 INFO L273 TraceCheckUtils]: 4: Hoare triple {4352#true} havoc ~in~0;assume -2147483648 <= #t~nondet1 && #t~nondet1 <= 2147483647;~inlen~0 := #t~nondet1;havoc #t~nondet1;assume -2147483648 <= #t~nondet2 && #t~nondet2 <= 2147483647;~bufferlen~0 := #t~nondet2;havoc #t~nondet2;havoc ~buf~0;havoc ~buflim~0; {4352#true} is VALID [2018-11-19 00:05:33,943 INFO L273 TraceCheckUtils]: 5: Hoare triple {4352#true} assume ~bufferlen~0 > 1; {4352#true} is VALID [2018-11-19 00:05:33,943 INFO L273 TraceCheckUtils]: 6: Hoare triple {4352#true} assume ~inlen~0 > 0; {4352#true} is VALID [2018-11-19 00:05:33,943 INFO L273 TraceCheckUtils]: 7: Hoare triple {4352#true} assume ~bufferlen~0 < ~inlen~0; {4352#true} is VALID [2018-11-19 00:05:33,944 INFO L273 TraceCheckUtils]: 8: Hoare triple {4352#true} ~buf~0 := 0;~in~0 := 0;~buflim~0 := ~bufferlen~0 - 2; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,944 INFO L273 TraceCheckUtils]: 9: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume true; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,945 INFO L273 TraceCheckUtils]: 10: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,945 INFO L273 TraceCheckUtils]: 11: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,946 INFO L273 TraceCheckUtils]: 12: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} assume !(~buf~0 == ~buflim~0); {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,946 INFO L256 TraceCheckUtils]: 13: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,946 INFO L273 TraceCheckUtils]: 14: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,946 INFO L273 TraceCheckUtils]: 15: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,946 INFO L273 TraceCheckUtils]: 16: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,947 INFO L268 TraceCheckUtils]: 17: Hoare quadruple {4352#true} {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #75#return; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,947 INFO L256 TraceCheckUtils]: 18: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,947 INFO L273 TraceCheckUtils]: 19: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,948 INFO L273 TraceCheckUtils]: 20: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,948 INFO L273 TraceCheckUtils]: 21: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,949 INFO L268 TraceCheckUtils]: 22: Hoare quadruple {4352#true} {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #77#return; {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,950 INFO L273 TraceCheckUtils]: 23: Hoare triple {4354#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= 0 main_~buf~0) (<= (+ main_~buflim~0 2) main_~bufferlen~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,950 INFO L273 TraceCheckUtils]: 24: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,951 INFO L256 TraceCheckUtils]: 25: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,951 INFO L273 TraceCheckUtils]: 26: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,951 INFO L273 TraceCheckUtils]: 27: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,951 INFO L273 TraceCheckUtils]: 28: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,952 INFO L268 TraceCheckUtils]: 29: Hoare quadruple {4352#true} {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} #79#return; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,953 INFO L256 TraceCheckUtils]: 30: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,953 INFO L273 TraceCheckUtils]: 31: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,953 INFO L273 TraceCheckUtils]: 32: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,953 INFO L273 TraceCheckUtils]: 33: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,954 INFO L268 TraceCheckUtils]: 34: Hoare quadruple {4352#true} {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} #81#return; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,955 INFO L273 TraceCheckUtils]: 35: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} assume true; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,955 INFO L273 TraceCheckUtils]: 36: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,956 INFO L273 TraceCheckUtils]: 37: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,956 INFO L273 TraceCheckUtils]: 38: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,956 INFO L256 TraceCheckUtils]: 39: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,956 INFO L273 TraceCheckUtils]: 40: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,957 INFO L273 TraceCheckUtils]: 41: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,957 INFO L273 TraceCheckUtils]: 42: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,957 INFO L268 TraceCheckUtils]: 43: Hoare quadruple {4352#true} {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} #75#return; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,958 INFO L256 TraceCheckUtils]: 44: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,958 INFO L273 TraceCheckUtils]: 45: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,958 INFO L273 TraceCheckUtils]: 46: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,958 INFO L273 TraceCheckUtils]: 47: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,959 INFO L268 TraceCheckUtils]: 48: Hoare quadruple {4352#true} {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} #77#return; {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} is VALID [2018-11-19 00:05:33,960 INFO L273 TraceCheckUtils]: 49: Hoare triple {4436#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 1 main_~buf~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,961 INFO L273 TraceCheckUtils]: 50: Hoare triple {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,961 INFO L256 TraceCheckUtils]: 51: Hoare triple {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,961 INFO L273 TraceCheckUtils]: 52: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,962 INFO L273 TraceCheckUtils]: 53: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,962 INFO L273 TraceCheckUtils]: 54: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,963 INFO L268 TraceCheckUtils]: 55: Hoare quadruple {4352#true} {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} #79#return; {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,963 INFO L256 TraceCheckUtils]: 56: Hoare triple {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,963 INFO L273 TraceCheckUtils]: 57: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,963 INFO L273 TraceCheckUtils]: 58: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,964 INFO L273 TraceCheckUtils]: 59: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,964 INFO L268 TraceCheckUtils]: 60: Hoare quadruple {4352#true} {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} #81#return; {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,965 INFO L273 TraceCheckUtils]: 61: Hoare triple {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} assume true; {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,966 INFO L273 TraceCheckUtils]: 62: Hoare triple {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,967 INFO L273 TraceCheckUtils]: 63: Hoare triple {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} assume !!(0 != #t~nondet3);havoc #t~nondet3; {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,968 INFO L273 TraceCheckUtils]: 64: Hoare triple {4515#(and (<= main_~bufferlen~0 (+ main_~buflim~0 2)) (<= (+ main_~buflim~0 2) main_~bufferlen~0) (<= 2 main_~buf~0))} assume !(~buf~0 == ~buflim~0); {4561#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,968 INFO L256 TraceCheckUtils]: 65: Hoare triple {4561#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 2 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,968 INFO L273 TraceCheckUtils]: 66: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,968 INFO L273 TraceCheckUtils]: 67: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,969 INFO L273 TraceCheckUtils]: 68: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,969 INFO L268 TraceCheckUtils]: 69: Hoare quadruple {4352#true} {4561#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 2 main_~buf~0))} #75#return; {4561#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,970 INFO L256 TraceCheckUtils]: 70: Hoare triple {4561#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 2 main_~buf~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,970 INFO L273 TraceCheckUtils]: 71: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,970 INFO L273 TraceCheckUtils]: 72: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,970 INFO L273 TraceCheckUtils]: 73: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,971 INFO L268 TraceCheckUtils]: 74: Hoare quadruple {4352#true} {4561#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 2 main_~buf~0))} #77#return; {4561#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 2 main_~buf~0))} is VALID [2018-11-19 00:05:33,972 INFO L273 TraceCheckUtils]: 75: Hoare triple {4561#(and (or (<= main_~bufferlen~0 (+ main_~buf~0 1)) (<= (+ main_~buf~0 3) main_~bufferlen~0)) (<= 2 main_~buf~0))} #t~post4 := ~buf~0;~buf~0 := 1 + #t~post4;havoc #t~post4; {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} is VALID [2018-11-19 00:05:33,972 INFO L273 TraceCheckUtils]: 76: Hoare triple {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} #t~post5 := ~in~0;~in~0 := 1 + #t~post5;havoc #t~post5; {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} is VALID [2018-11-19 00:05:33,973 INFO L256 TraceCheckUtils]: 77: Hoare triple {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~in~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,973 INFO L273 TraceCheckUtils]: 78: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,973 INFO L273 TraceCheckUtils]: 79: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,973 INFO L273 TraceCheckUtils]: 80: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,973 INFO L268 TraceCheckUtils]: 81: Hoare quadruple {4352#true} {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} #79#return; {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} is VALID [2018-11-19 00:05:33,974 INFO L256 TraceCheckUtils]: 82: Hoare triple {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} call __VERIFIER_assert((if ~in~0 < ~inlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,974 INFO L273 TraceCheckUtils]: 83: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,974 INFO L273 TraceCheckUtils]: 84: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,974 INFO L273 TraceCheckUtils]: 85: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,975 INFO L268 TraceCheckUtils]: 86: Hoare quadruple {4352#true} {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} #81#return; {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} is VALID [2018-11-19 00:05:33,975 INFO L273 TraceCheckUtils]: 87: Hoare triple {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} assume true; {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} is VALID [2018-11-19 00:05:33,976 INFO L273 TraceCheckUtils]: 88: Hoare triple {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} assume -2147483648 <= #t~nondet3 && #t~nondet3 <= 2147483647; {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} is VALID [2018-11-19 00:05:33,976 INFO L273 TraceCheckUtils]: 89: Hoare triple {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} assume !(0 != #t~nondet3);havoc #t~nondet3; {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} is VALID [2018-11-19 00:05:33,976 INFO L256 TraceCheckUtils]: 90: Hoare triple {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,977 INFO L273 TraceCheckUtils]: 91: Hoare triple {4352#true} ~cond := #in~cond; {4355#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:33,977 INFO L273 TraceCheckUtils]: 92: Hoare triple {4355#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,977 INFO L273 TraceCheckUtils]: 93: Hoare triple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,978 INFO L268 TraceCheckUtils]: 94: Hoare quadruple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} #83#return; {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} is VALID [2018-11-19 00:05:33,978 INFO L256 TraceCheckUtils]: 95: Hoare triple {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,979 INFO L273 TraceCheckUtils]: 96: Hoare triple {4352#true} ~cond := #in~cond; {4355#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} is VALID [2018-11-19 00:05:33,979 INFO L273 TraceCheckUtils]: 97: Hoare triple {4355#(= __VERIFIER_assert_~cond |__VERIFIER_assert_#in~cond|)} assume !(0 == ~cond); {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,980 INFO L273 TraceCheckUtils]: 98: Hoare triple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2018-11-19 00:05:33,981 INFO L268 TraceCheckUtils]: 99: Hoare quadruple {4356#(not (= |__VERIFIER_assert_#in~cond| 0))} {4595#(and (or (<= main_~bufferlen~0 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0)) (<= 3 main_~buf~0))} #85#return; {4668#(and (<= 3 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,982 INFO L273 TraceCheckUtils]: 100: Hoare triple {4668#(and (<= 3 main_~buf~0) (<= (+ main_~buf~0 2) main_~bufferlen~0))} #t~post6 := ~buf~0;~buf~0 := 1 + #t~post6;havoc #t~post6; {4672#(and (<= (+ main_~buf~0 1) main_~bufferlen~0) (<= 5 main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,982 INFO L256 TraceCheckUtils]: 101: Hoare triple {4672#(and (<= (+ main_~buf~0 1) main_~bufferlen~0) (<= 5 main_~bufferlen~0))} call __VERIFIER_assert((if 0 <= ~buf~0 then 1 else 0)); {4352#true} is VALID [2018-11-19 00:05:33,982 INFO L273 TraceCheckUtils]: 102: Hoare triple {4352#true} ~cond := #in~cond; {4352#true} is VALID [2018-11-19 00:05:33,983 INFO L273 TraceCheckUtils]: 103: Hoare triple {4352#true} assume !(0 == ~cond); {4352#true} is VALID [2018-11-19 00:05:33,983 INFO L273 TraceCheckUtils]: 104: Hoare triple {4352#true} assume true; {4352#true} is VALID [2018-11-19 00:05:33,984 INFO L268 TraceCheckUtils]: 105: Hoare quadruple {4352#true} {4672#(and (<= (+ main_~buf~0 1) main_~bufferlen~0) (<= 5 main_~bufferlen~0))} #87#return; {4672#(and (<= (+ main_~buf~0 1) main_~bufferlen~0) (<= 5 main_~bufferlen~0))} is VALID [2018-11-19 00:05:33,985 INFO L256 TraceCheckUtils]: 106: Hoare triple {4672#(and (<= (+ main_~buf~0 1) main_~bufferlen~0) (<= 5 main_~bufferlen~0))} call __VERIFIER_assert((if ~buf~0 < ~bufferlen~0 then 1 else 0)); {4691#(= |__VERIFIER_assert_#in~cond| 1)} is VALID [2018-11-19 00:05:33,986 INFO L273 TraceCheckUtils]: 107: Hoare triple {4691#(= |__VERIFIER_assert_#in~cond| 1)} ~cond := #in~cond; {4695#(= 1 __VERIFIER_assert_~cond)} is VALID [2018-11-19 00:05:33,986 INFO L273 TraceCheckUtils]: 108: Hoare triple {4695#(= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4353#false} is VALID [2018-11-19 00:05:33,986 INFO L273 TraceCheckUtils]: 109: Hoare triple {4353#false} assume !false; {4353#false} is VALID [2018-11-19 00:05:34,001 INFO L134 CoverageAnalysis]: Checked inductivity of 489 backedges. 118 proven. 29 refuted. 0 times theorem prover too weak. 342 trivial. 0 not checked. [2018-11-19 00:05:34,021 INFO L312 seRefinementStrategy]: Constructing automaton from 0 perfect and 2 imperfect interpolant sequences. [2018-11-19 00:05:34,021 INFO L327 seRefinementStrategy]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 13] total 20 [2018-11-19 00:05:34,022 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 110 [2018-11-19 00:05:34,023 INFO L84 Accepts]: Finished accepts. word is accepted. [2018-11-19 00:05:34,023 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 20 states. [2018-11-19 00:05:34,176 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:34,176 INFO L459 AbstractCegarLoop]: Interpolant automaton has 20 states [2018-11-19 00:05:34,177 INFO L142 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2018-11-19 00:05:34,177 INFO L144 InterpolantAutomaton]: CoverageRelationStatistics Valid=59, Invalid=321, Unknown=0, NotChecked=0, Total=380 [2018-11-19 00:05:34,178 INFO L87 Difference]: Start difference. First operand 108 states and 124 transitions. Second operand 20 states. [2018-11-19 00:05:36,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:36,492 INFO L93 Difference]: Finished difference Result 108 states and 124 transitions. [2018-11-19 00:05:36,492 INFO L142 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2018-11-19 00:05:36,492 INFO L78 Accepts]: Start accepts. Automaton has 20 states. Word has length 110 [2018-11-19 00:05:36,492 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2018-11-19 00:05:36,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-19 00:05:36,495 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 78 transitions. [2018-11-19 00:05:36,495 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 20 states. [2018-11-19 00:05:36,497 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 78 transitions. [2018-11-19 00:05:36,497 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 78 transitions. [2018-11-19 00:05:36,868 INFO L119 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2018-11-19 00:05:36,868 INFO L225 Difference]: With dead ends: 108 [2018-11-19 00:05:36,868 INFO L226 Difference]: Without dead ends: 0 [2018-11-19 00:05:36,870 INFO L604 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 102 SyntacticMatches, 4 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 192 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=197, Invalid=795, Unknown=0, NotChecked=0, Total=992 [2018-11-19 00:05:36,871 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2018-11-19 00:05:36,871 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2018-11-19 00:05:36,871 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2018-11-19 00:05:36,871 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand 0 states. [2018-11-19 00:05:36,872 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2018-11-19 00:05:36,872 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2018-11-19 00:05:36,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:36,872 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2018-11-19 00:05:36,872 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-19 00:05:36,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:36,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:36,873 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand 0 states. [2018-11-19 00:05:36,873 INFO L87 Difference]: Start difference. First operand 0 states. Second operand 0 states. [2018-11-19 00:05:36,873 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2018-11-19 00:05:36,873 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2018-11-19 00:05:36,873 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-19 00:05:36,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:36,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2018-11-19 00:05:36,874 INFO L88 GeneralOperation]: Finished isEquivalent. [2018-11-19 00:05:36,874 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2018-11-19 00:05:36,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand 0 states. [2018-11-19 00:05:36,874 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2018-11-19 00:05:36,874 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 110 [2018-11-19 00:05:36,874 INFO L84 Accepts]: Finished accepts. word is rejected. [2018-11-19 00:05:36,874 INFO L480 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2018-11-19 00:05:36,874 INFO L481 AbstractCegarLoop]: Interpolant automaton has 20 states. [2018-11-19 00:05:36,874 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2018-11-19 00:05:36,874 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2018-11-19 00:05:36,878 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2018-11-19 00:05:36,961 WARN L250 erpolLogProxyWrapper]: Already inconsistent. [2018-11-19 00:05:36,988 WARN L250 erpolLogProxyWrapper]: Already inconsistent. [2018-11-19 00:05:37,928 WARN L180 SmtUtils]: Spent 870.00 ms on a formula simplification. DAG size of input: 49 DAG size of output: 36 [2018-11-19 00:05:38,250 WARN L180 SmtUtils]: Spent 187.00 ms on a formula simplification. DAG size of input: 56 DAG size of output: 34 [2018-11-19 00:05:38,520 WARN L180 SmtUtils]: Spent 174.00 ms on a formula simplification. DAG size of input: 56 DAG size of output: 34 [2018-11-19 00:05:38,861 WARN L180 SmtUtils]: Spent 144.00 ms on a formula simplification. DAG size of input: 49 DAG size of output: 30 [2018-11-19 00:05:39,014 WARN L180 SmtUtils]: Spent 145.00 ms on a formula simplification. DAG size of input: 49 DAG size of output: 30 [2018-11-19 00:05:39,022 INFO L428 ceAbstractionStarter]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2018-11-19 00:05:39,022 INFO L425 ceAbstractionStarter]: For program point ULTIMATE.initEXIT(line -1) no Hoare annotation was computed. [2018-11-19 00:05:39,022 INFO L425 ceAbstractionStarter]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2018-11-19 00:05:39,023 INFO L428 ceAbstractionStarter]: At program point L-1(line -1) the Hoare annotation is: true [2018-11-19 00:05:39,023 INFO L428 ceAbstractionStarter]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2018-11-19 00:05:39,023 INFO L425 ceAbstractionStarter]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2018-11-19 00:05:39,023 INFO L421 ceAbstractionStarter]: At program point L27(line 27) the Hoare annotation is: (let ((.cse5 (+ main_~buflim~0 2))) (let ((.cse0 (<= (+ main_~bufferlen~0 1) main_~inlen~0)) (.cse2 (<= 1 main_~in~0)) (.cse3 (<= (+ main_~buf~0 3) main_~bufferlen~0)) (.cse4 (<= .cse5 main_~bufferlen~0)) (.cse1 (<= main_~bufferlen~0 .cse5))) (or (and .cse0 (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) .cse1 (<= 3 main_~buf~0) .cse2 .cse3 .cse4) (and .cse0 .cse2 .cse3 .cse4 (<= main_~in~0 1) .cse1 (<= 1 main_~buf~0)) (and .cse0 (<= 0 main_~in~0) (<= main_~in~0 0) .cse3 (= main_~bufferlen~0 .cse5) (= main_~buf~0 0)) (and .cse0 .cse2 .cse3 .cse4 (<= main_~in~0 2) .cse1 (<= 2 main_~buf~0))))) [2018-11-19 00:05:39,024 INFO L421 ceAbstractionStarter]: At program point L27-1(line 27) the Hoare annotation is: (let ((.cse5 (+ main_~buflim~0 2))) (let ((.cse2 (<= 1 main_~in~0)) (.cse4 (<= .cse5 main_~bufferlen~0)) (.cse1 (<= main_~bufferlen~0 .cse5)) (.cse0 (<= (+ main_~bufferlen~0 1) main_~inlen~0)) (.cse3 (<= (+ main_~buf~0 3) main_~bufferlen~0))) (or (and .cse0 (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) .cse1 (<= 3 main_~buf~0) .cse2 .cse3 .cse4) (and .cse0 .cse2 .cse3 .cse4 (<= main_~in~0 1) .cse1 (<= 1 main_~buf~0)) (and .cse0 .cse2 .cse3 .cse4 (<= main_~in~0 2) .cse1 (<= 2 main_~buf~0)) (and .cse0 (<= 0 main_~in~0) (<= main_~in~0 0) .cse3 (= main_~bufferlen~0 .cse5) (= main_~buf~0 0))))) [2018-11-19 00:05:39,024 INFO L425 ceAbstractionStarter]: For program point mainEXIT(lines 10 42) no Hoare annotation was computed. [2018-11-19 00:05:39,024 INFO L425 ceAbstractionStarter]: For program point L23-1(lines 23 34) no Hoare annotation was computed. [2018-11-19 00:05:39,024 INFO L425 ceAbstractionStarter]: For program point L23-2(lines 23 34) no Hoare annotation was computed. [2018-11-19 00:05:39,024 INFO L425 ceAbstractionStarter]: For program point L19(line 19) no Hoare annotation was computed. [2018-11-19 00:05:39,024 INFO L421 ceAbstractionStarter]: At program point L23-4(lines 23 34) the Hoare annotation is: (let ((.cse2 (<= 1 main_~in~0)) (.cse0 (<= 0 main_~buf~0)) (.cse3 (<= (+ main_~buf~0 2) main_~bufferlen~0))) (or (and (<= main_~buf~0 0) (<= 0 main_~in~0) .cse0 (<= 2 main_~bufferlen~0)) (let ((.cse1 (+ main_~buflim~0 2))) (and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= main_~bufferlen~0 .cse1) .cse2 .cse0 (<= .cse1 main_~bufferlen~0) .cse3)) (and (<= main_~buf~0 2) .cse2 .cse0 (<= 3 main_~inlen~0) .cse3))) [2018-11-19 00:05:39,025 INFO L425 ceAbstractionStarter]: For program point L36(line 36) no Hoare annotation was computed. [2018-11-19 00:05:39,025 INFO L421 ceAbstractionStarter]: At program point L32(line 32) the Hoare annotation is: (let ((.cse5 (+ main_~buflim~0 2))) (let ((.cse4 (<= (+ main_~buf~0 2) main_~bufferlen~0)) (.cse0 (<= (+ main_~bufferlen~0 1) main_~inlen~0)) (.cse1 (<= 1 main_~in~0)) (.cse2 (<= .cse5 main_~bufferlen~0)) (.cse3 (<= main_~bufferlen~0 .cse5))) (or (and .cse0 .cse1 .cse2 (<= main_~in~0 2) .cse3 .cse4 (<= 2 main_~buf~0)) (and .cse0 (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) .cse3 (<= 3 main_~buf~0) .cse1 .cse2 .cse4) (and .cse0 .cse1 .cse2 (<= main_~in~0 1) .cse3 (<= 1 main_~buf~0) (< main_~buf~0 (+ main_~buflim~0 1)))))) [2018-11-19 00:05:39,025 INFO L421 ceAbstractionStarter]: At program point L32-1(line 32) the Hoare annotation is: (let ((.cse5 (+ main_~buflim~0 2))) (let ((.cse4 (<= (+ main_~buf~0 2) main_~bufferlen~0)) (.cse0 (<= (+ main_~bufferlen~0 1) main_~inlen~0)) (.cse1 (<= 1 main_~in~0)) (.cse2 (<= .cse5 main_~bufferlen~0)) (.cse3 (<= main_~bufferlen~0 .cse5))) (or (and .cse0 .cse1 .cse2 (<= main_~in~0 2) .cse3 .cse4 (<= 2 main_~buf~0)) (and .cse0 (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) .cse3 (<= 3 main_~buf~0) .cse1 .cse2 .cse4) (and .cse0 .cse1 .cse2 (<= main_~in~0 1) .cse3 (<= 1 main_~buf~0) (< main_~buf~0 (+ main_~buflim~0 1)))))) [2018-11-19 00:05:39,025 INFO L425 ceAbstractionStarter]: For program point L28(line 28) no Hoare annotation was computed. [2018-11-19 00:05:39,025 INFO L428 ceAbstractionStarter]: At program point L41(lines 11 42) the Hoare annotation is: true [2018-11-19 00:05:39,025 INFO L421 ceAbstractionStarter]: At program point L33(lines 23 34) the Hoare annotation is: (let ((.cse5 (+ main_~buflim~0 2))) (let ((.cse4 (<= (+ main_~buf~0 2) main_~bufferlen~0)) (.cse0 (<= (+ main_~bufferlen~0 1) main_~inlen~0)) (.cse1 (<= 1 main_~in~0)) (.cse2 (<= .cse5 main_~bufferlen~0)) (.cse3 (<= main_~bufferlen~0 .cse5))) (or (and .cse0 .cse1 .cse2 (<= main_~in~0 2) .cse3 .cse4 (<= 2 main_~buf~0)) (and .cse0 (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) .cse3 (<= 3 main_~buf~0) .cse1 .cse2 .cse4) (and .cse0 .cse3 (<= 0 main_~in~0) .cse2 (<= main_~in~0 0) (= main_~buf~0 0) (<= 2 main_~bufferlen~0)) (and .cse0 .cse1 .cse2 (<= main_~in~0 1) .cse3 (<= 1 main_~buf~0) (< main_~buf~0 (+ main_~buflim~0 1)))))) [2018-11-19 00:05:39,025 INFO L425 ceAbstractionStarter]: For program point L25(lines 25 26) no Hoare annotation was computed. [2018-11-19 00:05:39,025 INFO L425 ceAbstractionStarter]: For program point L17(line 17) no Hoare annotation was computed. [2018-11-19 00:05:39,025 INFO L425 ceAbstractionStarter]: For program point L17-1(lines 11 42) no Hoare annotation was computed. [2018-11-19 00:05:39,025 INFO L425 ceAbstractionStarter]: For program point mainFINAL(lines 10 42) no Hoare annotation was computed. [2018-11-19 00:05:39,026 INFO L421 ceAbstractionStarter]: At program point L38(line 38) the Hoare annotation is: (let ((.cse0 (and (<= 0 main_~in~0) (<= 0 main_~buf~0)))) (or (and (<= (+ main_~buf~0 1) main_~bufferlen~0) (and (<= 3 main_~inlen~0) .cse0) (< 1 main_~bufferlen~0)) (and (<= main_~buf~0 1) .cse0 (<= 2 main_~bufferlen~0)))) [2018-11-19 00:05:39,026 INFO L421 ceAbstractionStarter]: At program point L38-1(line 38) the Hoare annotation is: (let ((.cse0 (and (<= 0 main_~in~0) (<= 0 main_~buf~0)))) (or (and (<= (+ main_~buf~0 1) main_~bufferlen~0) (and (<= 3 main_~inlen~0) .cse0) (< 1 main_~bufferlen~0)) (and (<= main_~buf~0 1) .cse0 (<= 2 main_~bufferlen~0)))) [2018-11-19 00:05:39,026 INFO L425 ceAbstractionStarter]: For program point L30(lines 30 31) no Hoare annotation was computed. [2018-11-19 00:05:39,026 INFO L428 ceAbstractionStarter]: At program point mainENTRY(lines 10 42) the Hoare annotation is: true [2018-11-19 00:05:39,026 INFO L425 ceAbstractionStarter]: For program point L18(lines 11 42) no Hoare annotation was computed. [2018-11-19 00:05:39,026 INFO L425 ceAbstractionStarter]: For program point L39(line 39) no Hoare annotation was computed. [2018-11-19 00:05:39,026 INFO L421 ceAbstractionStarter]: At program point L35(line 35) the Hoare annotation is: (let ((.cse2 (<= 1 main_~in~0)) (.cse0 (<= 0 main_~buf~0)) (.cse3 (<= (+ main_~buf~0 2) main_~bufferlen~0))) (or (and (<= main_~buf~0 0) (<= 0 main_~in~0) .cse0 (<= 2 main_~bufferlen~0)) (let ((.cse1 (+ main_~buflim~0 2))) (and (<= (+ main_~bufferlen~0 1) main_~inlen~0) (<= (+ main_~in~0 main_~bufferlen~0 1) (+ main_~buf~0 main_~inlen~0)) (<= main_~bufferlen~0 .cse1) .cse2 .cse0 (<= .cse1 main_~bufferlen~0) .cse3)) (and (<= main_~buf~0 2) .cse2 .cse0 (<= 3 main_~inlen~0) .cse3))) [2018-11-19 00:05:39,027 INFO L425 ceAbstractionStarter]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 5) no Hoare annotation was computed. [2018-11-19 00:05:39,027 INFO L428 ceAbstractionStarter]: At program point __VERIFIER_assertENTRY(lines 3 8) the Hoare annotation is: true [2018-11-19 00:05:39,027 INFO L425 ceAbstractionStarter]: For program point __VERIFIER_assertEXIT(lines 3 8) no Hoare annotation was computed. [2018-11-19 00:05:39,027 INFO L425 ceAbstractionStarter]: For program point L5(line 5) no Hoare annotation was computed. [2018-11-19 00:05:39,027 INFO L425 ceAbstractionStarter]: For program point L4(lines 4 6) no Hoare annotation was computed. [2018-11-19 00:05:39,027 INFO L425 ceAbstractionStarter]: For program point L4-2(lines 3 8) no Hoare annotation was computed. [2018-11-19 00:05:39,029 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2018-11-19 00:05:39,029 WARN L170 areAnnotationChecker]: L17 has no Hoare annotation [2018-11-19 00:05:39,029 WARN L170 areAnnotationChecker]: L4 has no Hoare annotation [2018-11-19 00:05:39,029 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2018-11-19 00:05:39,029 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: L17 has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: L17 has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: L4 has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: L4 has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: L17-1 has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: L17-1 has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: L5 has no Hoare annotation [2018-11-19 00:05:39,030 WARN L170 areAnnotationChecker]: L5 has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: L4-2 has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: L18 has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: L18 has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2018-11-19 00:05:39,031 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2018-11-19 00:05:39,032 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2018-11-19 00:05:39,032 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2018-11-19 00:05:39,032 WARN L170 areAnnotationChecker]: L19 has no Hoare annotation [2018-11-19 00:05:39,032 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2018-11-19 00:05:39,032 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2018-11-19 00:05:39,032 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2018-11-19 00:05:39,032 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L39 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L30 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L23-2 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L23-2 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L25 has no Hoare annotation [2018-11-19 00:05:39,039 WARN L170 areAnnotationChecker]: L25 has no Hoare annotation [2018-11-19 00:05:39,040 INFO L163 areAnnotationChecker]: CFG has 11 edges. 11 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2018-11-19 00:05:39,051 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 19.11 12:05:39 BoogieIcfgContainer [2018-11-19 00:05:39,052 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2018-11-19 00:05:39,053 INFO L168 Benchmark]: Toolchain (without parser) took 30969.28 ms. Allocated memory was 1.5 GB in the beginning and 2.7 GB in the end (delta: 1.2 GB). Free memory was 1.4 GB in the beginning and 2.3 GB in the end (delta: -876.3 MB). Peak memory consumption was 279.8 MB. Max. memory is 7.1 GB. [2018-11-19 00:05:39,054 INFO L168 Benchmark]: CDTParser took 0.28 ms. Allocated memory is still 1.5 GB. Free memory is still 1.5 GB. There was no memory consumed. Max. memory is 7.1 GB. [2018-11-19 00:05:39,054 INFO L168 Benchmark]: CACSL2BoogieTranslator took 321.83 ms. Allocated memory is still 1.5 GB. Free memory was 1.4 GB in the beginning and 1.4 GB in the end (delta: 10.6 MB). Peak memory consumption was 10.6 MB. Max. memory is 7.1 GB. [2018-11-19 00:05:39,055 INFO L168 Benchmark]: Boogie Preprocessor took 39.82 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 7.1 GB. [2018-11-19 00:05:39,055 INFO L168 Benchmark]: RCFGBuilder took 750.28 ms. Allocated memory was 1.5 GB in the beginning and 2.3 GB in the end (delta: 726.7 MB). Free memory was 1.4 GB in the beginning and 2.2 GB in the end (delta: -753.4 MB). Peak memory consumption was 26.2 MB. Max. memory is 7.1 GB. [2018-11-19 00:05:39,056 INFO L168 Benchmark]: TraceAbstraction took 29853.02 ms. Allocated memory was 2.3 GB in the beginning and 2.7 GB in the end (delta: 429.4 MB). Free memory was 2.2 GB in the beginning and 2.3 GB in the end (delta: -133.5 MB). Peak memory consumption was 295.9 MB. Max. memory is 7.1 GB. [2018-11-19 00:05:39,060 INFO L336 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - GenericResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.28 ms. Allocated memory is still 1.5 GB. Free memory is still 1.5 GB. There was no memory consumed. Max. memory is 7.1 GB. * CACSL2BoogieTranslator took 321.83 ms. Allocated memory is still 1.5 GB. Free memory was 1.4 GB in the beginning and 1.4 GB in the end (delta: 10.6 MB). Peak memory consumption was 10.6 MB. Max. memory is 7.1 GB. * Boogie Preprocessor took 39.82 ms. Allocated memory is still 1.5 GB. Free memory is still 1.4 GB. There was no memory consumed. Max. memory is 7.1 GB. * RCFGBuilder took 750.28 ms. Allocated memory was 1.5 GB in the beginning and 2.3 GB in the end (delta: 726.7 MB). Free memory was 1.4 GB in the beginning and 2.2 GB in the end (delta: -753.4 MB). Peak memory consumption was 26.2 MB. Max. memory is 7.1 GB. * TraceAbstraction took 29853.02 ms. Allocated memory was 2.3 GB in the beginning and 2.7 GB in the end (delta: 429.4 MB). Free memory was 2.2 GB in the beginning and 2.3 GB in the end (delta: -133.5 MB). Peak memory consumption was 295.9 MB. Max. memory is 7.1 GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - PositiveResult [Line: 5]: call of __VERIFIER_error() unreachable For all program executions holds that call of __VERIFIER_error() unreachable at this location - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 23]: Loop Invariant Derived loop invariant: ((((((((bufferlen + 1 <= inlen && 1 <= in) && buflim + 2 <= bufferlen) && in <= 2) && bufferlen <= buflim + 2) && buf + 2 <= bufferlen) && 2 <= buf) || ((((((bufferlen + 1 <= inlen && in + bufferlen + 1 <= buf + inlen) && bufferlen <= buflim + 2) && 3 <= buf) && 1 <= in) && buflim + 2 <= bufferlen) && buf + 2 <= bufferlen)) || ((((((bufferlen + 1 <= inlen && bufferlen <= buflim + 2) && 0 <= in) && buflim + 2 <= bufferlen) && in <= 0) && buf == 0) && 2 <= bufferlen)) || ((((((bufferlen + 1 <= inlen && 1 <= in) && buflim + 2 <= bufferlen) && in <= 1) && bufferlen <= buflim + 2) && 1 <= buf) && buf < buflim + 1) - InvariantResult [Line: 11]: Loop Invariant Derived loop invariant: 1 - StatisticsResult: Ultimate Automizer benchmark data CFG has 4 procedures, 36 locations, 1 error locations. SAFE Result, 29.7s OverallTime, 10 OverallIterations, 16 TraceHistogramMax, 18.6s AutomataDifference, 0.0s DeadEndRemovalTime, 2.1s HoareAnnotationTime, HoareTripleCheckerStatistics: 309 SDtfs, 463 SDslu, 1856 SDs, 0 SdLazy, 2252 SolverSat, 505 SolverUnsat, 0 SolverUnknown, 0 SolverNotchecked, 5.1s Time, PredicateUnifierStatistics: 0 DeclaredPredicates, 584 GetRequests, 403 SyntacticMatches, 14 SemanticMatches, 167 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 791 ImplicationChecksByTransitivity, 3.5s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=108occurred in iteration=9, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s AbstIntTime, 0 AbstIntIterations, 0 AbstIntStrong, NaN AbsIntWeakeningRatio, NaN AbsIntAvgWeakeningVarsNumRemoved, NaN AbsIntAvgWeakenedConjuncts, 0.0s DumpTime, AutomataMinimizationStatistics: 1.1s AutomataMinimizationTime, 10 MinimizatonAttempts, 19 StatesRemovedByMinimization, 5 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 15 LocationsWithAnnotation, 58 PreInvPairs, 100 NumberOfFragments, 768 HoareAnnotationTreeSize, 58 FomulaSimplifications, 839 FormulaSimplificationTreeSizeReduction, 0.1s HoareSimplificationTime, 15 FomulaSimplificationsInter, 902 FormulaSimplificationTreeSizeReductionInter, 1.8s HoareSimplificationTimeInter, RefinementEngineStatistics: TraceCheckStatistics: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 5.8s InterpolantComputationTime, 890 NumberOfCodeBlocks, 890 NumberOfCodeBlocksAsserted, 20 NumberOfCheckSat, 872 ConstructedInterpolants, 0 QuantifiedInterpolants, 263289 SizeOfPredicates, 27 NumberOfNonLiveVariables, 854 ConjunctsInSsa, 114 ConjunctsInUnsatCore, 18 InterpolantComputations, 6 PerfectInterpolantSequences, 1731/2032 InterpolantCoveringCapability, InvariantSynthesisStatistics: No data available, InterpolantConsolidationStatistics: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be correct! Received shutdown request...